lambda
ИМЯ
lambda — вспомогательные команды для анонимных процедур
Содержание
КРАТКОЕ ОПИСАНИЕ
package require Tcl 8.5 9
package require lambda ?1.1?
::lambda arguments body ?arg...?
::lambda@ namespace arguments body ?arg...?
ОПИСАНИЕ
Этот пакет предоставляет две вспомогательные команды, которые делают запись анонимных процедур, то есть лямбда-функций, более похожей на proc. Вместо того чтобы, например, писать
set f {::apply {{x} {
....
}}}
с глубоко вложенными фигурными скобками или
set f [list ::apply {{x y} {
....
}} $value_for_x]
с командой list для вставки некоторых аргументов при частичном применении, просто напишите
set f [lambda {x} {
....
}]
и
set f [lambda {x y} {
....
} $value_for_x]
КОМАНДЫ
-
::lambda arguments body ?arg...?
Команда создает анонимную процедуру из списка аргументов, скрипта тела и (необязательных) предопределенных значений аргументов и возвращает префикс команды, представляющий эту анонимную процедуру.
При вызове body выполняется в новой области видимости процедуры непосредственно под глобальной областью видимости; аргументам присваиваются значения, переданные как при создании, так и при вызове.
-
::lambda@ namespace arguments body ?arg...?
Команда создает анонимную процедуру из имени пространства имен, списка аргументов, скрипта тела и (необязательных) предопределенных значений аргументов и возвращает префикс команды, представляющий эту анонимную процедуру.
При вызове body выполняется в новой области видимости процедуры в пространстве имен namespace; аргументам присваиваются значения, переданные как при создании, так и при вызове.
АВТОРЫ
Andreas Kupries
ОШИБКИ, ИДЕИ, ОТЗЫВЫ
В этом документе и описываемом в нем пакете, несомненно, есть ошибки и другие проблемы. Пожалуйста, сообщайте о них в категории lambda в системе отслеживания ошибок Tcllib. Также сообщайте о любых идеях по улучшению пакета и/или документации.
Предлагая изменения кода, пожалуйста, предоставляйте унифицированные различия, то есть вывод команды diff -u.
Также обратите внимание, что предпочтительнее прикреплять вложения, а не вставлять исправления в текст. Чтобы прикрепить файл, сразу после создания заявки перейдите к форме Редактировать, а затем нажмите самую левую кнопку на панели дополнительной навигации.
СМ. ТАКЖЕ
apply(n), proc(n)
КАТЕГОРИЯ
Вспомогательные средства
АВТОРСКИЕ ПРАВА
Авторское право © 2011 Andreas Kupries, лицензия BSD