slot-lambda: Write lambdas without naming the parameters.

[ language, library, mit ] [ Propose Tags ]

Write lambdas without naming the parameters. Example:

[s| ı : ı : _ı : ı : _ı : _ı : _0 : [] |] 'a' 'b' 'c'
=  (\x y z -> x:y:y:z:z:z:x:[]) 'a' 'b' 'c'
=  "abbccca"

The unicode character ı(U+0131, not the number 1!) representing a 'slot' can be input in vim with the digraph 'i.' . stands for the same argument as the immediate left ı does. Any suggestions of another unicode character in the 'Letter, Lowercase' category that

1)no one would use as a variable name, and

2)can be easily input in vim

are welcome. You can also use _0,_1,_2,... to refer to the 1st, 2nd, 3rd, ... arguments.

Just import Syntax.Slot and use either [s| ... |] or [slot| ... |], which are the same thing given two names for convenience.

[Skip to Readme]




Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS],,,
Dependencies base (>=4.6 && <5), containers (>=, haskell-src-exts (>=, haskell-src-meta (>=, syb (>=0.4.1), template-haskell (>=2.8), vector (>= [details]
License MIT
Author ducis
Category Language
Home page
Uploaded by ducis at 2014-04-08T05:00:07Z
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 2885 total (8 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]

Readme for slot-lambda-

[back to package description]


Write lambdas without naming the parameters.

[s| ı : ı : _ı : ı : _ı : _ı : _0 : [] |] 'a' 'b' 'c' = "abbccca"