Self-optimizing data structures: using types to make lists faster
donsbot.wordpress.com
donsbot.wordpress.com
Is the main point of this to create something like [!a] ? (ok not really - it's about parts of "a" being strict) Is it just the current syntax / spec limitation that we can't do this? Can it be safely ported in this or some other way into the standard list implementation?
The code examples show the different, as do the pictures of the heap.
This is some kind of extremely aggressive, but uniform, specialization.
I would guess that if you limited your ambition of using all the features in the language to something you almost know well, after making some programs using that feature-set, I'd guess you'll see the need for some better feature, and there's a good chance it already exists.
Does not that sound reasonable to you?