Well, what we already have is a lot of language extensions with varying degrees of support across implementations. GHC is somewhat of a standard in and of itself, and one thing that standardisation efforts bring is a record of what exactly GHC is doing, thus allowing for more and better implementations.
Also, Haskell is only as good as it is now because it has been changing, and many options and smart ideas have been explored at each step. I'd personally like to see Haskell grow in all directions - both in practicality and in language features/abstraction. Not every change has to break everything, but sometimes breaking things is worth it if the language comes out better. In basically every case, implementations will almost certainly be able to provide backwards compatibility modes for incompatible changes, at least until things are largely switched over. There are a variety of unsatisfying things about the H98 standard which should be dealt with if Haskell is to be the best language it can be. Dealing with them is a good idea in my opinion (though in many cases it might be better to do this with Haskell 2, depending on what people think). There are some potential extensions I've been discussing lately with Stefan Ljungstrand, one of which is for fixing the issue that, for example Set cannot be made an instance of Functor or Monad, which may turn into concrete proposals sometime soon. Other proposals, like John Meacham's recent class aliasing proposal would be useful in cleaning up the class hierarchy in the Prelude, and making it feel less like all the good infix identifiers are stolen. Also, many people have complained, myself included, about Functor not being a superclass of Monad, and join not being included as a class method of Monad (with default instances going between join and bind). Future proposals aside, the language that people are programming in today is not Haskell 98. Multiparameter typeclasses and functional dependencies are common. I use newtype deriving fairly often (together with monad transformers), and that's not standard. Class methods are not allowed to have types which are typeclass restricted in H98, which, regardless of how often it's actually used, is kind of silly not to allow. Arbitrary rank polymorphism isn't in Haskell 98, which means that things like Control.Monad.ST aren't possible. GADTs are new, but they're a great idea and already in use in major projects such as Pugs. Concurrent and Parallel Haskell aren't standard. I'm sure I've missed things too. Standardising these extensions which people use will help document them in one place rather than a variety of papers, and will help existing code be more portable. If done right, there's no reason that Haskell has to lose users over further standardisation, and cleaning up of previous standards. Transitions can be made smoother by providing backwards compatibility in the implementations for at least a limited amount of time, with warnings to note deprecated usage of the language. New standards shouldn't serve as forks of the language, but as continuations of it. - Cale Gibbard On 13/10/05, Stephane Bortzmeyer <[EMAIL PROTECTED]> wrote: > On Wed, Oct 12, 2005 at 03:39:34PM -0700, > Isaac Jones <[EMAIL PROTECTED]> wrote > a message of 30 lines which said: > > > One of the main topics was the perceived need of a new standard, > > As someone who is not an academic researcher and not a student in CS, > I would like to express a personal opinion; we don't need a new > standard. To me, Haskell needs more libraries, more users (which means > more debugging and more documentations), more implementations, of > course more real applications (darcs did a lot of the success of > Haskell), so we can read their code, push sysadmins to install > Haskell, etc. > > Most functional programming languages have been killed by the "CS > effect": the fact that most users are more interested in exploring new > areas of computer science than in producing code. Lisp and ML were > killed by the explosion of many different and incompatible versions. I > am not interested in Haskell++ or OOHaskell or anything like that. > > If people want to standardize things, their time could be, IMHO, best > spent by standardizing libraries (I just recently discovered that > Text.Regex is not standard and my programs do not run under hugs). > > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe > _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe