Patch title: Release 81 bulk changes
Abstract:
File: /pliant/language/memory/raw.page
Key:
    Removed line
    Added line
title "Raw memory access"

listing
  ¤memory_allocate `size `near -> `address
    arg Int `size ; arg address `near ; arg address `address
[Allocates 'size' bytes. If these bytes are for storing a subpart of an object, you must provide the address of the object in 'near'. If not, provide] ; fixed [ null ] ; [as 'near' parameter.[lf]]
[If no more memory is available, the function will not return] ; fixed [ null ] ; [but rather generate a fatal error that will stop the program disgracefully.]

listing
  ¤memory_zallocate `size `near -> `address
    arg Int `size ; arg address `near ; arg address `address
[The allocated bytes will be filled with zeros.]

listing
  ¤memory_resize `old_address `size `near -> `new_address
    arg address `old_address `new_address `near ; arg Int `size
[Resizes the allocated area.]

listing
  ¤memory_zresize `old_address `size `near -> `new_address
    arg address `old_address `new_address `near ; arg Int `size
[If the area is extended, the extra bytes will be filled with zeros.]

listing
  ¤memory_free `address
    arg address `address
[Releases an allocated area.]

listing
  ¤memory_size `address -> `size
    arg address `address ; arg Int `size
[Return the true size of the allocated area.]

listing
  ¤memory_checkup
[Walks around all memory chunks in order to check if everything is all right. This will be an efficient check only if running at debugging level 2 at least.]

listing
  ¤memory_shrink
[attempts to unallocate (at OS level) all memory pages that are completely contained in a free chunk.]