[Haskell-cafe] what does the '~' mean ?

Magnus Therning magnus at therning.org
Fri Apr 16 03:10:11 EDT 2010


On 16/04/10 07:09, Ivan Miljenovic wrote:
> On 16 April 2010 15:59, zaxis <z_axis at 163.com> wrote:
>>
>> instance (BinaryDefer a, BinaryDefer b) => BinaryDefer (a,b) where
>>    put (a,b) = put2 a b
>>    get = get2 (,)
>>    size x = let ~(a,b) = x in size a + size b
>>    putFixed (a,b) = putFixed2 a b
>>    getFixed = getFixed2 (,)
>>
>> in `size` function, what does the `~` mean ?
> 
> A lazy pattern match: http://en.wikibooks.org/wiki/Haskell/Laziness
> (there is a better name for it, but I can't remember).

Irrefutable patterns?

/M

-- 
Magnus Therning                        (OpenPGP: 0xAB4DFBA4)
magnus@therning.org          Jabber: magnus@therning.org
http://therning.org/magnus         identi.ca|twitter: magthe

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: OpenPGP digital signature
Url : http://www.haskell.org/pipermail/haskell-cafe/attachments/20100416/34a5f77c/signature.bin


More information about the Haskell-Cafe mailing list