,syntax_description="Give a name to the expression of a pattern to be able to use the whole expression without creating new graphs."
,syntax_description="Give a name to the expression of a pattern to be able to use the whole expression without creating new graphs. This can also be used to check if a value (not a function argument) matches a pattern (undocumented and you can not use identifiers). `=:` can not be used in prefix form because it is not an actual operator but a builtin."
,syntax_doc_locations=[CLR5"3.2""_Toc311797997"]
,syntax_examples=
[EXs"macro""isJustU e=:(Just _) = (True, e) // On an ADT"
,EX":: Position = {px :: Int, py :: Int}\ngetx p=:{px} = (px, p) // On a record; this has type :: Position -> (Int, Position)"
,EX"isSingleton l = l =: [_] //Match a value with a pattern"