Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #8653
| Path | csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!news.albasani.net!.POSTED!not-for-mail |
|---|---|
| From | Jan Burse <janburse@fastmail.fm> |
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: CICE and ARM --> Closure, how? |
| Date | Sun, 09 Oct 2011 00:54:44 +0200 |
| Organization | albasani.net |
| Lines | 54 |
| Message-ID | <j6qkbm$vbb$2@news.albasani.net> (permalink) |
| References | <j6npgg$gv5$1@news.albasani.net> <j6o00f$kvk$1@dont-email.me> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=UTF-8; format=flowed |
| Content-Transfer-Encoding | 7bit |
| X-Trace | news.albasani.net FSxynLyEtAjw5qbDXaXKVe6HCLNbs91vDe5LfianslL63PYQ7r9HA9goM8/3fV0zp16scU7TRJjqf07diCVgBg== |
| NNTP-Posting-Date | Sat, 8 Oct 2011 22:54:46 +0000 (UTC) |
| Injection-Info | news.albasani.net; logging-data="aQUVeIMbSCOa0S/ELlKTP+t+Lf5L44tZsfulVdnU0i+YrkQTKFVQSDnqxW7wsFVqqmtK2sHTxcIYuTlH9iqs60ZrXOEAWN4n01m3ruFdDPw2bkqoNP1u1FY8bQrSYaWC"; mail-complaints-to="abuse@albasani.net" |
| User-Agent | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20110928 Firefox/7.0.1 SeaMonkey/2.4.1 |
| In-Reply-To | <j6o00f$kvk$1@dont-email.me> |
| Cancel-Lock | sha1:TCKH1QRN6hUWkB0xy6E7NRiqJak= |
| Xref | x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:8653 |
Show key headers only | View raw
Thanks for the explanation.
Joshua Cranmer schrieb:
> On 10/7/2011 4:04 PM, Jan Burse wrote:
>> Dear All,
>>
>> I am just reading on the Wiki page of Josh Bloch:
>>
>> Bloch has proposed the extension of the Java
>> programming language with two features: Concise
>> Instance Creation Expressions (CICE) (coproposed
>> with Bob Lee and Doug Lea) and Automatic
>> Resource Management (ARM) blocks. The combination
>> of CICE and ARM formed one of the three early
>> proposals for adding support for closures to Java.
>>
>> By ARM I understand the try-with-resource. Can somebody
>> explain me how this together with CICE is related to
>> closure? In a few sentences without looking much at
>> other proposals. I don't have any clue from the hip.
>
> CICE+ARM was Bloch (and other)'s counterproposal to the other two main
> closure proposals, BGGA (the acronym comes from the authors' names), and
> FCM (First-Class Methods) (I think--I know a lot less about this than
> the other two).
>
> To call it a closures proposal is a slight misnomer, since it's more
> like a "we don't want closures, but we can lighten up on necessary
> syntax today." The ARM part is a response to BGGA's trumpeting of the
> ability to do `withLock(lock) { }' via closures, by solving the
> most-requested (and pretty much only requested) new control flow idiom,
> which is the largest source of BGGA's complexity.
>
> CICE, on the other hand, points out that Java already has limited closures:
>
> new Thread(new Runnable() {
> public void run() {
> System.out.println("Look at me!");
> }});
>
> It proposed to "satisfy" demands for closures by reducing the syntax of
> that expression to just:
> new Thread(new Runnable() { System.out.println("Look at me!"); });
>
> In other words, CICE+ARM boils down to the following things:
> 1. Reduce verbosity of anonymous inner classes (which are already a
> light form of closures)
> 2. Add the automatic resource management idiom to reduce the desire for
> creating custom control-flow graphs.
>
> It really isn't adding anything new in the realm of closures, it is
> merely about syntactic sugar to satisfy most common use cases.
>
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Find similar
CICE and ARM --> Closure, how? Jan Burse <janburse@fastmail.fm> - 2011-10-07 23:04 +0200
Re: CICE and ARM --> Closure, how? Joshua Cranmer <Pidgeot18@verizon.invalid> - 2011-10-07 17:55 -0500
Re: CICE and ARM --> Closure, how? Jan Burse <janburse@fastmail.fm> - 2011-10-09 00:54 +0200
csiph-web