
On Sun, Nov 30, 2014 at 04:25:36PM +0100, Nicola Gigante wrote:
Il giorno 30/nov/2014, alle ore 15:59, Roman Cheplyaka
ha scritto: The language («GHC Haskell») is evolving quite rapidly, it's just no-one is really interested in maintaining the standard anymore.
I don't think it should disappoint you, unless you're a language researcher or compiler writer.
Hi.
I’m a newcomer to the Haskell world, coming from C++ where the standard and conformity to the standard is of great value.
Given the tendency of commercial implementors to deviate with custom and often bad-designed features, having an international standard that has to be followed by anyone is a great thing (and implementors are unfortunately very good at deviating anyway).
At first, the existence of the Haskell standard gave me a good impression. Haskell is not like other languages like python or Java that, at the end, have the One True Implementation. Haskell has born from the community, and there always have been a multiplicity of implementations. In this context, having a common standard to implement makes sense, to aid compatibility.
But Haskell is not like C++ neither. Haskell implementations are not driven by big corps, and features that deviates from the “standard” are not designed and implemented by marketing departments, but they are instead often the implementation of new and innovative ideas from the research world.
For this reason, it’s not so useful to crystallize the language to some-years-old standard when the compilers implementors, users and researchers are so good at evolving the language in a coherent way.
Here, I think, the point is the community: the language can continue to grow and evolve in the presence of multiple implementations by ensuring collaborations between the communities of the different compilers. If this continues to be done, I don’t think a formal standard, released every x years, is needed.
Frankly, I believe that as it stands, there only really is one industry-strength Haskell compiler - Hugs is dead, the others are either research vehicles (interesting, ground-breaking, but far from being useful alternatives to GHC for real-world applications IMO - I'd love to be corrected on this one btw), or special-purpose tools (most notably Haskell-to-JavaScript compilers like Fay) that don't even implement all of Haskell 2010, let alone the recent additions found in GHC. The need for a standard, therefor, isn't pressing enough at the moment, and the kind of well thought-out and well documented development we're seeing in GHC is enough to keep the language and its ecosystem moving at a high quality. I can understand very well that people put their money, time, and other resources, into actual features. That's fine, we currently need those more than a standard. If, at some point, an alternative compiler were to evolve (which, personally, I would consider a positive thing: diversity and a bit of healthy competition is good and can lead to great innovation boosts), standardization would move up on the priority list, just like it did for C++ when it became painfully obvious that GNU C++, clang-C++, Microsoft C++, and other serious contenders, had produced an inconsistent and incompatible mess between them that benefited nobody. We're *very* far from this in the Haskell world, and from what I've seen in the community, I don't think this is going to happen anytime soon, and if it were, we'd see a new standard sooner rather than later. (Note, btw., that one of the biggest sponsors behind GHC is Microsoft, and many of the other contributions come from commercial entities - Haskell consultancy firms, companies that use Haskell in their software ecosystem, and even companies that are built around Haskell software. Haskell has long ceased to be an ivory-tower research toy.) My $0.02 anyway.