[Haskell-cafe] Please allow beginners to vocalize code. >>= ::
-> &&& <- -<
Derek Elkins
derek.a.elkins at gmail.com
Tue Jan 8 12:08:45 EST 2008
On Tue, 2008-01-08 at 17:14 +0000, Richard Kelsall wrote:
> Henning Thielemann wrote:
> > On Tue, 8 Jan 2008, Richard Kelsall wrote:
> ...
> > '>>=' is spoken "bind"
> >
> ...
> >> On a related note, if there isn't already, it would be nice to have a
> >> page in the wiki that gives good ways of vocalizing the operators and
> >> vocalizing them in simple code snippets. I might get round to doing
> >> this sometime, maybe just a table something like this :
> >
> > Got idea, please go ahead! I suggest categories "Style" or "Syntax".
> >
> >
> >> Operator Formal Informal
> >> -------- ------ --------
> >> :: has type
> >> -> maps to to
> >> example
> >> f :: Int -> Int f has type Int to Int
> >
> > Is a symbol-by-symbol translation sensible? What about "f maps from Int to
> > Int", "plus maps Int to a function, which maps Int to Int"
> >
>
> Thank you. I've put a primitive page up here
>
> http://haskell.org/haskellwiki/Pronunciation
>
> under category syntax. Obviously it needs more work, but maybe it
> will act as a bit of grit in the oyster.
I don't why you think, "[t]here [is] a misconception that it somehow
helps beginners to understand things if they are not told how to 'say'
these strange new symbols." If you had said, "it doesn't help beginners
to be told how to 'say' these symbols", I would have less of an issue.
I don't think anyone thinks that it is helpful not to provide a reading,
and in my experience, a reading is usually provided, directly or
indirectly, when such things are introduced in (larger)
introductions/tutorials/textbooks. However, as you've already found,
some things don't seem to have meaningful readings. E.g. you list -< in
the title, but the motivation of that notation has nothing to do with it
having a clear "reading", but rather comes from a graphical perspective,
x <- f -< y
I.e. that looks like an arrow pointing left with -< the tail. That
said, two readings are indirectly provided in
http://www.haskell.org/arrows/sugar.html
More information about the Haskell-Cafe
mailing list