Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: markspace Newsgroups: comp.lang.java.programmer Subject: Re: Alternatives languages on the JVM: which one or is there no alternative? Date: Mon, 02 Dec 2013 18:07:31 -0800 Organization: A noiseless patient Spider Lines: 16 Message-ID: References: <5293388a$0$15988$e4fe514c@news2.news.xs4all.nl> <529453d2$0$15908$e4fe514c@news2.news.xs4all.nl> <73997663-103c-4e48-ac9b-c50e8babfaa6@googlegroups.com> <5294b061$0$15961$e4fe514c@news2.news.xs4all.nl> <52955f0f$0$296$14726298@news.sunsite.dk> <5295a669$0$15879$e4fe514c@news.xs4all.nl> <19zo5i01fjd4t.101filzjnniw.dlg@40tude.net> <52972d87$0$15919$e4fe514c@news.xs4all.nl> <5297cbd9$0$15882$e4fe514c@news2.news.xs4all.nl> <16c2e66f-de41-4a63-8525-b6703837ae15@googlegroups.com> <52987501$0$15919$e4fe514c@news.xs4all.nl> <01086072-1547-49d0-8ef6-ab6a22deb401@googlegroups.com> <529c9e1c$0$15920$e4fe514c@news.xs4all.nl> <529ca6a9$0$15992$e4fe514c@news.xs4all.nl> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Tue, 3 Dec 2013 02:07:35 +0000 (UTC) Injection-Info: mx05.eternal-september.org; posting-host="5aa64ebf9a53573f97c75abba936b0e2"; logging-data="2114"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX194XC3rsqQvKJGTI/6awY4DMm8X9pR/Ehg=" User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.1.1 In-Reply-To: Cancel-Lock: sha1:pyY9v8v6iDIg2qUR1Ew/KclFRRY= Xref: csiph.com comp.lang.java.programmer:26705 On 12/2/2013 12:07 PM, Robert Klemme wrote: > Still, I don't see any hard reasons that speak against doing real > closures. Maybe it's just the pragmatic way, i.e. not enough resources Have you read any of the discussion on the lambda-dev list? Brain Goetz was dead-set against "real" closures. He insisted on several occasions that "real" closures were broken and would not have been designed the way they were if computer science had known what they know today. The main issue iirc was that he wanted the lambdas to be immutable. If you go back and modify objects or fields by closing over them, then you no longer have an immutable operation. Whether the risk was thread safty and optimization, or programmer misuse, or something else, I don't recall off hand, but he was pretty adamant it was a dumb idea.