Currently, I believe the only objects whose addresses are not aligned on word boundaries are compiled entries. If we forced them to be aligned, then the log_2 (bits per word) low-order bits of every object address would be zero, and we could shift the address by that many bits when storing it as an object's datum.
This would let us quadruple the usable virtual address space on 32-bit systems, or octuple it if we got rid of the scode type tags and some unused type tags too (using records instead or something) and reduced the tags to five bits. Probably more trouble than it's worth, but it's a cute thought nevertheless which wouldn't require rewriting half of MIT Scheme. (I still occasionally think about this because while some of you lucky folks may be on super-snappy 64-bit machines, I'm still using a six- year-old 32-bit laptop.) _______________________________________________ MIT-Scheme-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/mit-scheme-devel
