[#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=

148 messages 2008/05/01
[#16661] Re: lambda, ->, haskell, and so on — Paul Brannan <pbrannan@...> 2008/05/05

On Thu, May 01, 2008 at 12:26:47PM +0900, Dave Thomas wrote:

[#16662] Re: lambda, ->, haskell, and so on — "David A. Black" <dblack@...> 2008/05/05

Hi --

[#16663] Re: lambda, ->, haskell, and so on — ts <decoux@...> 2008/05/05

David A. Black wrote:

[#16664] Re: lambda, ->, haskell, and so on — "David A. Black" <dblack@...> 2008/05/05

Hi --

[#16682] Re: lambda, ->, haskell, and so on — ara howard <ara.t.howard@...> 2008/05/08

[#16684] Re: lambda, ->, haskell, and so on — Michael Neumann <mneumann@...> 2008/05/08

ara howard wrote:

[#16687] Re: lambda, ->, haskell, and so on — "David A. Black" <dblack@...> 2008/05/08

Hi --

[#16691] Re: lambda, ->, haskell, and so on — "ara.t.howard" <ara.t.howard@...> 2008/05/08

[#16692] Re: lambda, ->, haskell, and so on — "David A. Black" <dblack@...> 2008/05/08

Hi --

[#16695] Re: lambda, ->, haskell, and so on — "ara.t.howard" <ara.t.howard@...> 2008/05/08

[#16705] Re: lambda, ->, haskell, and so on — Evan Phoenix <evan@...> 2008/05/11

Not to throw the whole thread into a tizzy again, but why again is:

[#16708] Re: lambda, ->, haskell, and so on — Nobuyoshi Nakada <nobu@...> 2008/05/11

Hi,

[#16720] Re: lambda, ->, haskell, and so on — Yukihiro Matsumoto <matz@...> 2008/05/11

Hi,

[#16721] Re: lambda, ->, haskell, and so on — "David A. Black" <dblack@...> 2008/05/12

Hi --

[#16722] Re: lambda, ->, haskell, and so on — Yukihiro Matsumoto <matz@...> 2008/05/12

Hi,

[#16723] Re: lambda, ->, haskell, and so on — Evan Phoenix <evan@...> 2008/05/12

[#16724] Re: lambda, ->, haskell, and so on — Yukihiro Matsumoto <matz@...> 2008/05/12

Hi,

[#16726] Re: lambda, ->, haskell, and so on — Nathan Weizenbaum <nex342@...> 2008/05/12

What about "fn" or "fun", for "function"?

[#16728] Re: lambda, ->, haskell, and so on — Yukihiro Matsumoto <matz@...> 2008/05/12

Hi,

[#16731] Re: lambda, ->, haskell, and so on — Evan Phoenix <evan@...> 2008/05/12

[#16732] Re: lambda, ->, haskell, and so on — Yukihiro Matsumoto <matz@...> 2008/05/12

Hi,

[#16759] Re: lambda, ->, haskell, and so on — "David A. Black" <dblack@...> 2008/05/13

Hi --

[#16766] Re: lambda, ->, haskell, and so on — Yukihiro Matsumoto <matz@...> 2008/05/14

Hi,

[#16784] Re: lambda, ->, haskell, and so on — "David A. Black" <dblack@...> 2008/05/18

Hi --

[#16795] Re: lambda, ->, haskell, and so on — Nate_Wiger@... 2008/05/19

On Wed, 14 May 2008, David A. Black wrote:

[#16797] Re: lambda, ->, haskell, and so on — Yukihiro Matsumoto <matz@...> 2008/05/19

Hi,

[#16798] Re: lambda, ->, haskell, and so on — "Christopher Gill" <gilltots@...> 2008/05/19

how about an uppercase lambda (instead of the usual lowercase one)

[#16802] Re: lambda, ->, haskell, and so on — "Suraj N. Kurapati" <sunaku@...> 2008/05/20

Christopher Gill wrote:

[#16843] Re: lambda, ->, haskell, and so on — "Suraj N. Kurapati" <sunaku@...> 2008/05/22

Suraj N. Kurapati wrote:

[#16846] Re: lambda, ->, haskell, and so on — "Berger, Daniel" <Daniel.Berger@...> 2008/05/22

=20

[#16854] Re: lambda, ->, haskell, and so on — "=?ISO-8859-2?Q?Rados=B3aw_Bu=B3at?=" <radek.bulat@...> 2008/05/22

T24gVGh1LCBNYXkgMjIsIDIwMDggYXQgNTozNyBQTSwgQmVyZ2VyLCBEYW5pZWwgPERhbmllbC5C

[#16857] Re: lambda, ->, haskell, and so on — "Jeremy McAnally" <jeremymcanally@...> 2008/05/23

RXZlbiB0aG91Z2ggSSBzZWUgdGhlIHVzZWZ1bG5lc3MsIHRoYXQncyBqdXN0IHVnbHkuCgotLUpl

[#16874] Re: lambda, ->, haskell, and so on — Nate_Wiger@... 2008/05/23

"Jeremy McAnally" <jeremymcanally@gmail.com> wrote on 05/22/2008 05:35:01=20

[#16875] Re: lambda, ->, haskell, and so on — "Nikolai Weibull" <now@...> 2008/05/23

2008/5/23 <Nate_Wiger@playstation.sony.com>:

[#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

64 messages 2008/05/25
[#16895] Re: [PATCH] lambda with normal block syntax — Nobuyoshi Nakada <nobu@...> 2008/05/26

Hi,

[#16900] Re: [PATCH] lambda with normal block syntax — "Eric Mahurin" <eric.mahurin@...> 2008/05/26

On Sun, May 25, 2008 at 8:19 PM, Nobuyoshi Nakada <nobu@ruby-lang.org>

[#16901] Re: [PATCH] lambda with normal block syntax — Yukihiro Matsumoto <matz@...> 2008/05/26

Hi,

[#16902] Re: [PATCH] lambda with normal block syntax — "Suraj N. Kurapati" <sunaku@...> 2008/05/26

Hi,

[#16903] Re: [PATCH] lambda with normal block syntax — Yukihiro Matsumoto <matz@...> 2008/05/26

Hi,

[#16904] Re: [PATCH] lambda with normal block syntax — Dave Thomas <dave@...> 2008/05/26

[#16905] Re: [PATCH] lambda with normal block syntax — Yukihiro Matsumoto <matz@...> 2008/05/26

Hi,

[#16907] Re: [PATCH] lambda with normal block syntax — Dave Thomas <dave@...> 2008/05/26

[#16912] Re: [PATCH] lambda with normal block syntax — Yukihiro Matsumoto <matz@...> 2008/05/26

Hi,

[#16920] Re: [PATCH] lambda with normal block syntax — David Flanagan <david@...> 2008/05/26

If I may, here are two entries from the ChangeLog file:

[#16922] Re: [PATCH] lambda with normal block syntax — Dave Thomas <dave@...> 2008/05/26

[#16927] Re: [PATCH] lambda with normal block syntax — David Flanagan <david@...> 2008/05/26

Dave Thomas wrote:

[#16928] Re: [PATCH] lambda with normal block syntax — Dave Thomas <dave@...> 2008/05/26

[#16929] Re: [PATCH] lambda with normal block syntax — David Flanagan <david@...> 2008/05/26

Dave Thomas wrote:

[#16931] Re: [PATCH] lambda with normal block syntax — Dave Thomas <dave@...> 2008/05/27

[#16946] Re: [PATCH] lambda with normal block syntax — David Flanagan <david@...> 2008/05/27

Dave Thomas wrote:

[#16947] Re: [PATCH] lambda with normal block syntax — James Gray <james@...> 2008/05/27

On May 27, 2008, at 12:33 PM, David Flanagan wrote:

[#16949] Re: [PATCH] lambda with normal block syntax — David Flanagan <david@...> 2008/05/27

James Gray wrote:

Re: [PATCH] lambda with normal block syntax

From: David Flanagan <david@...>
Date: 2008-05-26 22:01:40 UTC
List: ruby-core #16927
Dave Thomas wrote:
> 
> I disagree strongly. This is the period where we can actually use 1.9 
> for real work--until recently it really wasn't the case. And now, having 
> used it, we're finding rough edges, and we're suggesting changes.

Requesting a major change to the syntax of a language is not finding a 
"rough edge".  And I don't believe that any of the arguments against the 
-> syntax are informed by experience gained from "real work" with 1.9. 
These same arguments could have been made two years ago.  (And I suspect 
they were made back then.  Matz knew that -> was unpopular before 1.9.0 
was released, but he kept the syntax anyway.)

> Look at the length of this thread, and the near universal dislike of ->. 

The thread (and the recent ones like it) are long, but the number of 
contributors isn't that large.  What other evidence of "near universal 
dislike" can you cite?  (I'm not trying to be argumentative about that: 
I'm just curious about the point. I know it is disliked by a number of 
important and vocal contributors to this list. Do we have any other 
metrics?)

> Given that passion, and given that 1.9 is still fluid, what better time 
> is there to discuss it? Surely making it a part of 1.9.1, which is 
> considered stable, will make it a lot _harder_ to discuss and change, 
> and will give Matz far more grief in terms of change.

Matz's standard for language changes after 1.9.0 was something like (I'm 
paraphrasing here) "only if we come to really regret the decision".  The 
justification for -> was that it was necessary for argument defaults. I 
(and I assume most of us) accepted it as received wisdom from Matz, 
Nobu, etc., that it was impossible to implement default arguments with 
normal lambda syntax.  If Eric Mahurin has truly achieved the impossible 
with his remarkably simple argument defaults patch, then I suppose that 
that might cause Matz to reach the "serious regret" threshold and 
withdraw -> from 1.9.  But even if that happens, any discussion of 
alternative syntaxes should really be part of the discussion of Ruby 
2.0, not of Ruby 1.9.1.

But unless Eric's patch changes something, the decision about -> has 
been made, and we need to move on. I believe that Matz has interesting 
features planned for 2.0.  Let's look forward to discussing those rather 
than complaining, after the fact, about decisions that have already been 
made for 1.9.

Major kudos to Eric, by the way, for diving in and tackling the problem 
rather than just complaining about it. Most of the discussion of -> 
occurred before Eric's patch, however, and that discussion was (in my 
opinion) inappropriate and disrespectful.

> 1.9 was released to promote discussion. That's what we're doing. We can 
> both update our books as needed when the dust settles :)
> 

Sorry Dave, but that is nonsense. 1.9.0 is not a "discussion release". 
It is an almost-final developer preview release that requires bug-fixing 
and stability improvements before a stable 1.9.1 is released.  The time 
for discussion of the language features of 1.9 was the two or three 
years before Christmas 2007. Now is the time for  implementation fixes, 
not major language changes.

Here is my understanding of the Ruby 1.9 release history upon which I 
base my assertions: the 1.9 development branch opened up years ago.  It 
was originally intended to lead to a stable 2.0 release.  Then Matz 
scaled back his plans for the release and decided that the next release 
would not be 2.0. Not wanting to have to call the release 1.10, he 
decided that the 1.9 development branch would lead to a stable 1.9.1 
release. Matz set a release date of Christmas 2007 for this stable 
release.  Two or three months (if I recall correctly) before that date, 
it became clear to Matz that the implementation of his multi-lingual 
support would not be good enough by then to be called stable.  Rather 
than changing the release date, he released 1.9.0 instead of 1.9.1.

My point is this: up until the fall of 2007, we all believed that a 
stable 1.9.1 was to be released very soon.  Had the multi-lingual 
changes proved easier to implement, that is what would have happened. 
There was never a plan for an interim "discussion release". If you 
thought you could postpone discussion of key language features of 1.9 
until after the Christmas release, then you just weren't paying attention.

	David Flanagan

> 
> Dave
> 
> 


In This Thread