I don't think it's highly problematic. I agree that it would be nice to have the type and value levels have a similar structure, but if there are compelling reasons to do otherwise that fine too.
You could still allow symbol type variables if they have an explicit binding occurence, which you can always(?) do with type variables. -- Lennart On Dec 5, 2007 11:34 PM, Wolfgang Jeltsch <[EMAIL PROTECTED]> wrote: > Am Mittwoch, 5. Dezember 2007 17:05 schrieb Simon Peyton-Jones: > > […] > > > Anyway, while on this subject, I am considering making the following > > change: > > > > make all operator symbols into type constructors > > (currently they are type variables) > > This would be highly problematic! > > Concerning syntax, everything that holds for values should also hold for > types. For values, identifiers starting with a capital letter and > operators > starting with a colon denote "constants", everything else denotes > variables. > Exactly the same should hold for types since otherwise we would get a very > confusing result. So we should keep things as they are concerning type > constructors and type variables. And we should think about type functions > being denoted by lower case identifiers and operators not starting with a > colon because they are similar to non-constructor functions on the value > level. > > We should strive for a systematic language and therefore not make ad-hoc > decisions which for the moment seem to serve a purpose in some specific > cases. > > > […] > > Best wishes, > Wolfgang > _______________________________________________ > Glasgow-haskell-users mailing list > Glasgow-haskell-users@haskell.org > http://www.haskell.org/mailman/listinfo/glasgow-haskell-users >
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users