When I write Haskell I miss ML modules and eager evaluation. When I write ML I miss the modal distinction between expressions/computations and higher-kinded types. Does such a language (ML modules, eager, modal, higher kinds) exist?
Conversation
Scala deserves more of my attention, definitely. I didn’t know it had an ML-like module system. I’ll have to look into it again.
By modal I just mean that types witness purity — if I have an expression e : t, e doesn’t launch the missles.
4
4
Scala's class and object system is very close to/inspired by ML-like modules. Classes are signatures, objects are structures.


