From: Nobuyoshi@..., Nakada@... Date: 2014-01-12T23:36:38+00:00 Subject: [ruby-core:59721] [CommonRuby - Feature #9401] Yet another syntax for literal anonymous functions (lambdas) ������������ #9401 ��� Nobuyoshi Nakada ������������������������������������ What about `(^x) {x*x}`? ---------------------------------------- Feature #9401: Yet another syntax for literal anonymous functions (lambdas) https://bugs.ruby-lang.org/issues/9401#change-44235 * ���������: Alexey Muranov * ���������������: Open * ���������: Normal * ���������: * ������������: * ���������������������: ---------------------------------------- Please do not be angry at me and just close this proposal if it does not look interesting. It comes from my aesthetic dissatisfaction with the `->(x){ ... }` literal anonymous function notation and from my amateurish interest in lambda calculus. Here is a yet another syntax for literal anonymous functions (lambdas) that i propose: f = {\ x => x*x } f[1] # => 1 f[2] # => 4 It looks a bit like a hash on purpose: i think that a hash is a "function in extension" and a lambda is a "function in intension" (see, for example, in [these notes](http://www.classes.cs.uchicago.edu/archive/2004/spring/15300-1/docs/lambda-intro.pdf)). The backslash stands for "lambda", like in Haskell. -- http://bugs.ruby-lang.org/