@Brian Я все время использую lambdas в C #, в операциях LINQ и non-LINQ. Пример:
string[] GetCustomerNames(IEnumerable<Customer> customers)
{ return customers.Select(c=>c.Name);
}
До C # я использовал анонимные функции в JavaScript для обратных вызовов для функций AJAX до того, как был введен еще один термин Ajax:
getXmlFromServer(function(result) {/*success*/}, function(error){/*fail*/});
Интересная вещь с C # лямбда-синтаксис заключается в том, что их собственный тип не может быть выведен (т. е. вы не можете вводить var foo = (x, y) => x * y), но в зависимости от того, к какому типу они назначены, ll быть скомпилирован как делегаты или абстрактные синтаксические деревья, представляющие выражение (так как магические объекты объектов LINQ выполняют свою «встроенную в язык» магию).
Lambdas в LISP также может быть передан оператору котировки, а затем пройден как список списков. Некоторые мощные макросы сделаны таким образом.
Вы можете обернуть свой виджет в AbsorbPointer
, и он не будет получать прикосновения. Чтобы снова включить сенсорный ввод, вы можете установить absorbing: false
AbsorbPointer(
child: YourWidget(...),
);