4 ms·
In my experience, a memory win takes place because you can use something lighter weight (ADTs) to model your data as opposed to something that consumes addition
by jordwalke 12y ago
In my experience, a memory win takes place because you can use something lighter weight (ADTs) to model your data as opposed to something that consumes additional memory (objects or a record of bound functions) simply to get the type system to accept your code.
Furthermore, when using ADTs to store your data (and constructing modules that operate on them) I believe the resolution to the functions that operate on them are entirely done at compile time, not run time - whether or not that is being capitalized on is a different story, but I believe it has benefits now and will have even more later as the compiler authors continue to add more optimizations.
- emillon 12y agoYes, exactly. ADTs are entirely known statically so there's no vtable etc.