equal
deleted
inserted
replaced
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 |