Java.net is currently running a poll on closures, to get a feel for the strength of support for each proposal. Obviously, this poll has no power, but it is useful to see at a high level what the communities opinion is.
Personally, I'm really pleased with the level of support FCM has had in the vote so far, on this blog and privately. Now I'd like to encourage you, if you so desire, to vote and support FCM. Thanks!
Update: If you want to compare the three proposals, please take a look at my previous comparison articles - one method callbacks, control structures and type inference.
I'd like to encourage you to vote for the option you prefer!
ReplyDeletei think only hyper-active developers are following the closures discussions. it is sad that people are voting for BCGA tough without really knowing what it is (syntax is killing my eyes.)
ReplyDeleteI think it is sad that people discount votes that disagree with their personal opinion.
ReplyDeleteI have a question about the FCM proposal, does it allow "real" _First Class_ methods?
ReplyDeleteMeaning, can I create a .java file named "foo" in a package and add:
#foo(Integer(String bar)) {
return bar.hashCode();
}
in it, and then in another class do import package.to.foo;
and call:
foo.invoke("a string");
I couldn't directly find an answer in the proposal.
Syntax is a mater of taste, and taste is a matter of getting used to something. Let's go for the full closures proposal (BGGA) and keep Java compoetitive.
ReplyDeleteNeal and all: I hope it is obvious that you should only vote for FCM if you support it!
ReplyDeleteNicolas: although CICE, FCM and BGGA have different syntax, that isn't the most important difference. The real focus should be on how the *semantics* of the three proposals differ.
MLeo: I'm not completely clear about what you are asking - certainly your example code is not valid in FCM.
I can say that FCM is not about allowing methods as a construct outside a class. FCM simply allows you to access methods within a class completely and fully in a typesafe manner.
I amazed how ugly BGGA syntax is. It's this totally foreign notation to Java that looks very much like kiddie scripting. I don't want it to be voted into Java 7 just to make Gosling's "approval" come true. Why did those with PHDs have to come up with the worst syntax?
ReplyDeleteIts funny, I like BGGA's syntax, and FCM's semantics. Guess thats why I'm so unpopular in these discussions...
ReplyDeleteafsina: If they were not following the closures debate, how would they even know to vote for the cryptic sounding name BGGA? It does have an advantage in that it has gotten the most publicity out of the three, but I don't think you can argue that it is being chosen by people who have no idea what it is.
@Stephen Colebourne: My comment was about the name of the proposal, to me, it sounds like it would support that.
ReplyDeleteThanks for clarifying.
@Nicolas: To me, it seems like the FCM has more features (for example: method literals without the use of reflection), with better semantics (for the (below) average Java programmer).