[#16611] lambda, ->, haskell, and so on — Dave Thomas <dave@...>
This is one of those e-mails that I know from the start to be futile, =20=
T24gV2VkLCBBcHIgMzAsIDIwMDggYXQgMTE6MjYgUE0sIERhdmUgVGhvbWFzIDxkYXZlQHByYWdw
Hi --
David A. Black wrote:
wouldn't
On Thu, May 01, 2008 at 12:26:47PM +0900, Dave Thomas wrote:
Hi --
David A. Black wrote:
Hi --
David A. Black wrote:
On Tue, May 06, 2008 at 02:02:34AM +0900, David A. Black wrote:
Hi --
Hi --
ara howard wrote:
Hi --
Hi --
Hi --
Not to throw the whole thread into a tizzy again, but why again is:
Evan Phoenix wrote:
Hi,
Hi --
On Sun, May 11, 2008 at 9:49 AM, Nobuyoshi Nakada <nobu@ruby-lang.org>
Hi,
Hi --
Hi,
Hi,
What about "fn" or "fun", for "function"?
Hi,
Hi,
Hi --
Hi,
Hi --
On Wed, 14 May 2008, David A. Black wrote:
Hi,
how about an uppercase lambda (instead of the usual lowercase one)
Christopher Gill wrote:
Suraj N. Kurapati wrote:
Hi,
Nobuyoshi Nakada wrote:
Hi,
=20
T24gVGh1LCBNYXkgMjIsIDIwMDggYXQgNTozNyBQTSwgQmVyZ2VyLCBEYW5pZWwgPERhbmllbC5C
RXZlbiB0aG91Z2ggSSBzZWUgdGhlIHVzZWZ1bG5lc3MsIHRoYXQncyBqdXN0IHVnbHkuCgotLUpl
"Jeremy McAnally" <jeremymcanally@gmail.com> wrote on 05/22/2008 05:35:01=20
2008/5/23 <Nate_Wiger@playstation.sony.com>:
I am not sure if that fits to the thread. I have not used yet the more
Tammo Tjarks wrote:
Hi --
> assert_yin_yang -> { q += 0 }, 'it broke!', -> { q == 42 }
Hi --
>> assert_yin_yang proc{ q += 0 }, 'it broke!',
[#16627] Monotonic timeofday() — zimbatm <zimbatm@...>
Hi ruby-core.
[#16642] ruby/trunk rev 16276 broken? ib/erb.rb:429:in `initialize': wrong argument type StringScanner (expected true) (TypeError) — Kurt Stephens <ks@...>
Build crashes shortly after miniruby linkage
[#16648] Uniform RDoc markup — "Jeremy McAnally" <jeremymcanally@...>
Would there be any resistance to making the markup of the RDoc
[#16760] errors running make test — Stephen Bannasch <stephen.bannasch@...>
I updated to revision 16403 and now compiling and running ruby1.9
[#16772] The RubySpec project at rubyspec.org — Brian Ford <brixen@...>
Hi all,
[#16773] Singleton methods on Float and Bignum — Evan Phoenix <evan@...>
In 1.8 (and 1.9 likely), trying to add a singleton method to a Float
Evan Phoenix wrote:
[#16788] Ruby 1.8.7-preview3 has been released — "Akinori MUSHA" <knu@...>
Folks,
[#16791] GC heap allocation in 1.9 — Sylvain Joyeux <sylvain.joyeux@...4x.org>
While getting the latest of trunk, I stumbled on r16194.
[#16806] nil.instance_eval — ts <decoux@...>
[#16807] Embedding Ruby1.9: seg fault — Masoom <masoom.shaikh@...>
Hi,
Hi,
that means current vm is not embeddable ? by min. src I guess you mean the
Masoom wrote:
[#16812] Proposal: Subject of ruby-core ML article should include artile number — SASADA Koichi <ko1@...>
Hi,
On Tue, May 20, 2008 at 8:20 AM, SASADA Koichi <ko1@atdot.net> wrote:
Luis Lavena wrote:
[#16832] Who is responsible for Ruby license? — "Han, Kimyung" <Kimyung.Han@...>
I am trying to discuss the ruby license with anyone who is responsible
[#16834] Returning duplicate values from Dir.glob — "Vladimir Sizikov" <vsizikov@...>
Hi,
[#16839] ruby autoconf problems — "Michal Suchanek" <hramrach@...>
Hello
[#16864] removal of magical definition of name for some class definition idioms — "Robert Dober" <robert.dober@...>
Dear list
[#16884] block args w/ defaults (was Re: resolving lambda | ambiguity) — "Eric Mahurin" <eric.mahurin@...>
On Sat, May 24, 2008 at 4:06 PM, Eric Mahurin <eric.mahurin@gmail.com>
SGV5IQoKSSd2ZSB0cmllZCB5b3VyIHBhdGNoIGFuZCBoYXZlIHNvbWUgdHJvdWJsZXMuCkkgZXhw
[#16886] lambda with normal block syntax — "Eric Mahurin" <eric.mahurin@...>
This patch is an independent but related one to my previous one. It can be
Hi,
On Sun, May 25, 2008 at 8:19 PM, Nobuyoshi Nakada <nobu@ruby-lang.org>
Hi,
Hi,
Hi,
Hi,
On Mon, May 26, 2008 at 4:14 PM, Dave Thomas <dave@pragprog.com> wrote:
Hi,
On Mon, May 26, 2008 at 5:18 PM, Yukihiro Matsumoto <matz@ruby-lang.org>
Hi,
If I may, here are two entries from the ChangeLog file:
Dave Thomas wrote:
Dave Thomas wrote:
Dave Thomas wrote:
On May 27, 2008, at 12:33 PM, David Flanagan wrote:
James Gray wrote:
Dave Thomas wrote:
David Flanagan wrote:
Hi,
On 5/28/08, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:
Hi,
On Sun, May 25, 2008 at 2:31 AM, Eric Mahurin <eric.mahurin@gmail.com> wrote:
[#16921] Major performance degradation on trunk — "Vladimir Sizikov" <vsizikov@...>
Hi,
[#16943] Re: [PATCH] block args w/ defaults (updated) — "Eric Mahurin" <eric.mahurin@...>
MjAwOC81LzI2IFJhZG9zs2F3IEJ1s2F0IDxyYWRlay5idWxhdEBnbWFpbC5jb20+OgoKPiBIZXkh
[#16945] Oniguruma and \p{Greek} — Dave Thomas <dave@...>
Looking at the source, I'd expect the following to work:
[#16951] Ruby 1.9 "exception reentered" — "Paul Boekholt" <p.boekholt@...>
Hi,
2008/5/27, Paul Boekholt <p.boekholt@gmail.com>:
2008/6/6, Paul Boekholt <p.boekholt@gmail.com>:
> 2008/6/6, Paul Boekholt <p.boekholt@gmail.com>:
[#16953] 1.8.6, jemalloc, sock.close problem — Christopher Thompson <cthompson@...>
Warning: This message is probably only peripherally related to Ruby!
I used to catch Errno::EINVAL when using lots of open file descriptors
[#16955] ruby-mode.el copyright assignment — Phil Hagelberg <phil@...>
Hi,
[#16979] Array.nitems replacement? — David Flanagan <david@...>
Array.nitems has just been removed from 1.9, and as near as I can make
[#16984] ZLIB for MSVC 8 - tar_input.rb — "Giancarlo F Bellido" <support@...>
I managed to install wxruby and compile zlib extension using this patch in
On May 28, 2008, at 19:48 PM, Giancarlo F Bellido wrote:
[#17010] unexpected return using define_method — Paul Brannan <pbrannan@...>
Is this a bug?
Paul Brannan wrote:
On Fri, May 30, 2008 at 06:10:25PM +0900, ts wrote:
Paul Brannan wrote:
[#17028] Ruby 1.8.7 has been released — "Akinori MUSHA" <knu@...>
Folks,
On Sun, Jun 01, 2008 at 12:25:08AM +0900, Akinori MUSHA wrote:
At Mon, 2 Jun 2008 06:37:21 +0900,
On Mon, Jun 02, 2008 at 03:46:53PM +0900, Akinori MUSHA wrote:
[#17030] Bytecode handling (compilation) extensions to Ruby 1.9 — Adam Strzelecki <ono@...>
Hello,
Hello again,
Hi,
> to_ary() convert ISeq object to Array and well known objects such as
Re: lambda, ->, haskell, and so on
Hi --
On Thu, 1 May 2008, Brian Mitchell wrote:
> On Wed, Apr 30, 2008 at 11:26 PM, Dave Thomas <dave@pragprog.com> wrote:
>> This is one of those e-mails that I know from the start to be futile, bu=
t...
>>
>> For a while now, the
>>
>> -> (params) { block }
>>
>> syntax in Ruby 1.9 has bothered me, but I've never been sure why. Today=
,
>> while playing with pure, it struck me. The '->' sequence is in an unexpe=
cted
>> place. Having played with some functional languages, I'm used to lambdas
>> being written
>>
>> \ params -> block
>>
>> That is, the lambda is introduced with a \ (because, presumably, it loo=
ks a
>> bit like =CE=BB). The -> sequence separates the parameters from the bloc=
k. This
>> had become ingrained into be, in the same way that the equals sign in an
>> assignment
>>
>> a =3D expression
>>
>> goes between the lvalue and the rvalue.
>>
>> So, when I come to Ruby 1.9, suddenly there's some dissonance between w=
hat
>> I was used to and what I now have to type. The -> comes before the
>> parameters, not after. It's as if I had to write assignments
>>
>> =3D a expression
>>
>> So, here's the futile part... :)
>>
>> Is it too late for Ruby 1.9 to support lambdas that look like
>>
>> \ p1, p1 -> { block }
>>
>> I honestly feel this would be more natural, and more in line with the
>> prevailing idioms. I suspect it's parsable if you make the simplifying
>> assumption that line continuations must only have whitespace after them.
>
> I remember having a slight issue with the syntax as well when it was
> announced. I remember the round table at the 2005 RubyConf in San
> Diego where we discussed a number of alternatives.
>
> One idea I had proposed was to allow arguments to work within the
> block like they do now but with -> (more examples below). I believe
> it was shot down as being to odd (but look where we are now).
>
> foo { |a, b| a + b }
> foo { a, b -> a + b }
>
> and thus:
>
> lambda { a, b =3D 3 -> a + b }
>
> ... solving the original problem of argument list syntax. If we also
> wanted a lighter weight notation we could make {->} result in a proc
> object rather than act as a block parameter. Or if you like unicode:
>
> =CE=BB { x -> 42 }
>
>
> (Finally, there might be a way to allow syntax w/o {} or do-end but
> I'm not sure how far we should push -- "lambda x -> 42" looks rather
> nice though)
All I can say is: any of these are preferable, in my opinion, to
->(){}. The -> does not look like a lambda character (apologies to
Matz, but it simply doesn't); it looks like an arrow, point from
nothing to something, and I find it pretty jarring.
@Dave: you once suggested something like this (I think in San Diego):
def (a,b,c)
# code
end
as a way to create an anonymous function that used method argument
semantics (which I think is what the whole -> thing is about). There
was applause and cheering from the room. I'm not sure what happened to
that idea.
David
--=20
Rails training from David A. Black and Ruby Power and Light:
INTRO TO RAILS June 9-12 Berlin
ADVANCING WITH RAILS June 16-19 Berlin
INTRO TO RAILS June 24-27 London (Skills Matter)
See http://www.rubypal.com for details and updates!