[Haskell-cafe] an idea for modifiyng data/newtype syntax: use `::=` instead of `=`

Kosyrev Serge _deepfire at feelingofgreen.ru
Sat Aug 8 20:50:49 UTC 2015

First of all, I have no opinion of my own -- I merely share the memories
of also being confused by "type" not introducing a true type, but a type macro.

However there's something in the argument that I don't think is right..

Sven Panne <svenpanne at gmail.com> writes:
> +1 to this. As has already been noted in a different thread, the "let's introduce
> a pragma, nobody is forced to use it" argument is bogus. It fragments the language
> for no good reason

One moment, please, the good reason has been provided -- newbie confusion.

> and one *is* forced to handle it (when reading other people's
> code etc.). Furthermore, the current example at hand is roughly at position 2 of
> Wadler's Law of Language Design (https://wiki.haskell.org/Wadler's_Law), a.k.a.
> bikeshedding at the lexical level. ;-)

I don't think that the concept of "bikeshedding", on its own, should be
used as a tool to prevent constructive discussion of material shortcomings.

> Don't get me wrong: If Haskell was still at its infancy, renaming things would
> probably be beneficial, as "type" is somehow really a misnomer. One could discuss
> if "newtype" is really needed when we have "data" plus strictness annotations
> (personally I'm a bit unsure what the common use case for "case" is where they
> differ and what one might consider more natural). Given the case that people seem
> to move towards GADTs anyway, the discussion seems a bit moot.

The context here is newbies -- so existence of GADTs (which are an
advanced concept, let's not forget that!) is off-topic to the proposal.

> Just my 2c.
> P.S.: If you think this part of Haskell is a bit hard to read and confusing, I
> seriously propose a week or two in C++'s wonderful meta-programming world with
> templates... ;-)

Hey, we're talking about language adoption here.. I presume..
..and if we do, any undeserved complication does hurt.

So, in the end, the idea will probably be shot down -- but please, let's shoot
it down for a good reason, with a clear, irrefutable understanding of why.

Косырев Серёга
“And those who were seen dancing were thought to be insane
 by those who could not hear the music.”
 – Friedrich Wilhelm Nietzsche

More information about the Haskell-Cafe mailing list