
On Mon, Dec 19, 2016 at 2:22 PM, MarLinn via Haskell-Cafe < haskell-cafe@haskell.org> wrote:
If we want our language to remain extensible and at the forefront of language development, we can't tie down too many parts.
I think this is an excellent point. One of the distinguishing features of Haskell is that, as a language, it makes almost no concessions to the underlying architecture on which it is compiled or eventually run (and, impressively, manages to achieve very good performance and usability anyway!). Haskell, among all production languages, is perhaps the only one that would be equally at home on some sort of alien lambda-machine as it would on an x86 processor (i.e. not very, but Haskell's foundations are solid enough that we could make it work well). More practically, one could imagine that someone might like to use Haskell as e.g. some sort of cloud-based scripting language where the notion of a filesystem hierarchy doesn't make a lot of sense. There's no good reason to force the language to adhere to something as arbitrary or restricted as a traditional filesystem hierarchy. "Modules" are a much more general concept than files on a disk, and it would be a mistake to over-specify them. Cheers, Will