lambda(3tcl) | Utility commands for anonymous procedures | lambda(3tcl) |
lambda - Utility commands for anonymous procedures
package require Tcl 8.5
package require lambda ?1?
::lambda arguments body ?arg...?
::lambda@ namespace arguments body ?arg...?
This package provides two convenience commands to make the writing of anonymous procedures, i.e. lambdas more proc-like. Instead of, for example, to write
set f {::apply {{x} { .... }}}
set f [list ::apply {{x y} { .... }} $value_for_x]
set f [lambda {x} { .... }]
set f [lambda {x y} { .... } $value_for_x]
When invoked the body is run in a new procedure scope just underneath the global scope, with the arguments set to the values supplied at both construction and invokation time.
When invoked the body is run in a new procedure scope in the namespace, with the arguments set to the values supplied at both construction and invokation time.
Andreas Kupries
This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category lambda of the Tcllib Trackers [http://core.tcl.tk/tcllib/reportlist]. Please also report any ideas for enhancements you may have for either package and/or documentation.
When proposing code changes, please provide unified diffs, i.e the output of diff -u.
Note further that attachments are strongly preferred over inlined patches. Attachments can be made by going to the Edit form of the ticket immediately after its creation, and then using the left-most button in the secondary navigation bar.
apply(3tcl), proc(3tcl)
anonymous procedure, callback, command prefix, currying, lambda, partial application, proc
Utility
Copyright (c) 2011 Andreas Kupries, BSD licensed
1 | tcllib |