Difference between revisions of "Pronunciation"

From HaskellWiki
Jump to navigation Jump to search
(add :: description)
(add ~)
Line 50: Line 50:
 
| <hask> ! </hask>
 
| <hask> ! </hask>
 
| bang; strict (in patterns or data definitions); index (in expressions)
 
| bang; strict (in patterns or data definitions); index (in expressions)
  +
|-
  +
| <hask> ~ </hask>
  +
| irrefutable, lazy (in patterns)
 
|-
 
|-
 
| <hask> : </hask>
 
| <hask> : </hask>

Revision as of 21:12, 8 January 2008

Some notes for beginners on how to pronounce those strange Haskell operators etc.

This is just a rough start to this page. Obviously needs more work.

This can be a table with formal and informal ways of saying various operators and code snippets such as

Symbol Pronounciation
:: has type (in definitions); at type (in expressions or patterns)
-> maps to, to
= is
== equals
/= not-equals
=> is a witness for, implies
. dot (could be used anywhere, but especially in, for example, Data.Char.ord), ring, compose (for example, negate . (+1)), (silent) (for example, forall a. (Num a) => a)
<- drawn from, from
-<
++ append
>>= bind
>> then
\ lambda
! bang; strict (in patterns or data definitions); index (in expressions)
~ irrefutable, lazy (in patterns)
: cons
[] nil
() unit
(,) 2-tuple, pair
(a,b,c) [3-]tuple [of] a, b, and c
Example Pronounciation
f :: Int -> Int f has type Int to Int

should we add informal, possibly bad suggestions like "then", "is", "gets"?