NEWS
changeset 77692 3e746e684f4b
parent 77688 58b3913059fa
child 77695 93531ba2c784
equal deleted inserted replaced
77691:125414e23e12 77692:3e746e684f4b
   264     enabled by default and can be controlled using the 'abduce'
   264     enabled by default and can be controlled using the 'abduce'
   265     option.
   265     option.
   266 
   266 
   267 
   267 
   268 *** ML ***
   268 *** ML ***
       
   269 
       
   270 * Operations ML_Heap.sizeof1 and ML_Heap.sizeof determine the object
       
   271 size on the heap in bytes. The latter works simultaneously on multiple
       
   272 objects, taking implicit sharing of values into account. Examples for
       
   273 the default 64_32 platform (4 bytes per machine word):
       
   274 
       
   275   val s = "aaaabbbbcccc";
       
   276   val a = ML_Heap.sizeof1 s;
       
   277     (*20: 2 words descriptor + 3 words content*)
       
   278   val b = ML_Heap.sizeof [s, s];
       
   279     (*20: shared values without list structure*)
       
   280   val c = ML_Heap.sizeof1 [s, s];
       
   281     (*44 = 20 + 24: shared values + 2 * 3 words per list cons*)
   269 
   282 
   270 * Operations for Zstd compression (via Isabelle/Scala):
   283 * Operations for Zstd compression (via Isabelle/Scala):
   271 
   284 
   272   Zstd.compress: Bytes.T -> Bytes.T
   285   Zstd.compress: Bytes.T -> Bytes.T
   273   Zstd.uncompress: Bytes.T -> Bytes.T
   286   Zstd.uncompress: Bytes.T -> Bytes.T