[Java SE 7] 次世代Javaの動向 6 [dolphin]

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2008/09/01(月) 12:25:27
>>951
その辺の返し方がクソスレww
953デフォルトの名無しさん:2008/09/01(月) 17:29:50
typedefもどきはやめてくれ
ソースコードが読みにくくなるんだよ
954デフォルトの名無しさん:2008/09/01(月) 20:08:09
>>952
糞は無理して発言しなくていいよ。それよか、海外でもいいから、ねたブログとかないの?
955デフォルトの名無しさん:2008/09/01(月) 21:09:19
今のクロージャの仕様はtypedefよりひどいじゃねーかww

interface F {
 int f1(int x, int y);
 String f2(int x, int y);
}

F f = { int x, int y => x + y };
f.invoke(10, 100);

なんだよこれ
956デフォルトの名無しさん:2008/09/01(月) 21:40:54
どこかどう酷いのか書いてない用だけど…
おまえ、あたま大丈夫?
957デフォルトの名無しさん:2008/09/01(月) 23:14:13
>>955
これってメソッドが2つあるからコンパイルエラーでは?
なんか問題あるの?
958デフォルトの名無しさん:2008/09/01(月) 23:37:41
>>957
ところが仕様ではこれがOKなのさ
驚きだろ?
959デフォルトの名無しさん:2008/09/02(火) 03:31:21
これ自体は、イヤな動きだけども、これはどのくらいの頻度でありうるものなのかな
そして、どのくらいの頻度で、問題のある動きになるのかな?

メリットはかなり大きいと思うが、割りにあうのかないのか
960デフォルトの名無しさん:2008/09/02(火) 03:33:35
>>955
それならもうC#しかないな。C#でもDでもいいから、一緒にやらないか?
961デフォルトの名無しさん:2008/09/02(火) 03:42:20
Scalaでいいよ!
962デフォルトの名無しさん:2008/09/02(火) 03:52:42
scalaだけど少し調べてみたけど数年後には来そうだね。
でもグルービーと比べるとイマイチ違いがないんだよね(言語機能じゃなくて)。
グルービーはJSRで仕様堅めに入ってるから先が見込めるけど、scalaは(言語機能じゃなくて)普及の兆しを感じないな。

個人的にはjdk1.6で既にサポートされてるrhinoでいいんじゃないかと思う。
963デフォルトの名無しさん:2008/09/02(火) 04:00:21
静的型でクラスファイルができるのと、スクリプトと、違いがないってのか。
しかもrhinoでいいんじゃないかとかいう。

その言語で作ったクラスをJavaで自由に扱えるかどうかも、でかいとおもうよ。
964デフォルトの名無しさん:2008/09/02(火) 04:04:13
↑全く意味不明なので、書き直してもらえませんか?
965デフォルトの名無しさん:2008/09/02(火) 04:05:43
rhinoやgroovyじゃ、Java言語の代わりにはなれません。
966デフォルトの名無しさん:2008/09/02(火) 06:29:38
スクリプトサポートの目的はJavaの代わりになるかでなくて、Javaでは難しいところやかゆいところに手が届くって意味じゃないの?
967デフォルトの名無しさん:2008/09/02(火) 06:34:55
個人レベルで使うなら何だっていいが、企業向け開発だとなぁ
言語仕様も大事だが、大手のサポートやツールの有無
つまり周辺環境がないとどうしようもない
今んところ実質的な代替はC#にしかできないでしょ
あとはRubyがちょっと流行ったくらい
JavaがgdgdになるならScalaもありかもしんないけど
企業向けに立ち上がるにはよほど運がないと無理でしょ
968デフォルトの名無しさん:2008/09/02(火) 06:39:28
java langやjvmがサポートするのはフレームワークだと思うんだが、なんか外してないか?
まあ、このスレはこの程度かw
969デフォルトの名無しさん:2008/09/02(火) 06:42:36
>>966
Scalaはスクリプトサポートではなく、Java言語の代替として使うことを考えられてる。
だから静的コンパイルされてクラスファイルを生成して動かす。
そうすると、Javaと同等かそれ以上の速さで動く。
クラスファイルだから、Javaからも比較的自由に使える。つまり特別な仕組みを使わなくてもServletやJPAのクラスが作れるということ。
部分的な適用がやりやすくなる。
で、今は、Javaの言語仕様拡張よりScalaじゃねぇの?って文脈。Javaの代わりになるかという話。

>>967
企業向けのエンドプログラマはJava1.4で充分でしょ。
970デフォルトの名無しさん:2008/09/02(火) 06:43:38
言語オタクのおもちゃならScalaで十分
Javaになんでもかんでも詰め込んで欲しいとは思わん
971デフォルトの名無しさん:2008/09/02(火) 07:14:40
>>969みたいな
こういう俺様俺様ってのはどこにでもいるよなwwC++なんかこんな奴らの固まりだしww
972デフォルトの名無しさん:2008/09/02(火) 07:17:44
スカラもグルービも、ジャヴァも、クラスファイルを作ってJVMプラットフォームで動くんじゃなかったの?(.Netみたいに)
973デフォルトの名無しさん:2008/09/02(火) 08:04:16
企業向けだって1.4じゃつらすぎる。5つかっててオモタ。
974デフォルトの名無しさん:2008/09/02(火) 08:19:55
rhinoもバイトコードコンパイラあるんだが
975デフォルトの名無しさん:2008/09/02(火) 10:45:01
ジャヴァジャヴァ
976デフォルトの名無しさん:2008/09/02(火) 17:12:24
>>958
v0.5って仕様にはclosure conversionはsingle methodを持つもの、
って書いてあるのでそのケースはエラーになると思ったんだけど、どっか他に仕様がある?
呼ばれるメソッドが不定に見えるのでエラーにするのが普通だと思うんだが。

あと最後のinvokeはFがinvoke持ってないからエラーになるような。invokeに関しては、function typeがinvokeを持つinterfaceとして扱われるのでは。
977デフォルトの名無しさん:2008/09/02(火) 20:35:43
Tグループの会社を何件か見たが、どこもJava1.3が入ってたりして焦った。
定期的にアップグレードする計画を立てるのもシステム課の重要な仕事だな。
978デフォルトの名無しさん:2008/09/02(火) 20:51:02
いろいろ動かなくなるからアップグレードしちゃだめだよ
979デフォルトの名無しさん:2008/09/02(火) 21:15:02
>>976
それが普通だよなw
インタフェースのメソッドは一つらしい
でも例外的に他のメソッドの引数がObjectのときはOK
つまり正しくは以下のコードだったよ

interface F {
 int f1(int x, int y);
 String f2(Object x, Object y);
}

F f = { int x, int y => x + y };
f.invoke(10, 100);

invokeはクロージャを実行する特別メソッド
インタフェースとは全然関係ない
だから以下のように書けるようだ

{ int x, int y => x + y }.invoke(10,20);

これもなんだかどうしようもないよな
最初の例見ると可読性ないよw
980デフォルトの名無しさん:2008/09/02(火) 21:18:48
>>978
部署に一台、事務処理専用マシンを作っていくのは基本だろ?
981 :2008/09/02(火) 21:27:40
>>979 それが通るなら、逆にこれも通るのかな?


interface F {
 int f1(int x, int y);
 String f2(Object x, Object y);
}

class MyClass implements F{

int f1(int x, int y){
return x + y;
}

String f2(Object x, Object y){
return x.toString() + y.toString();
}
}



F f = new MyClass();
f.invoke(2,3);
982デフォルトの名無しさん:2008/09/02(火) 21:50:23
>>981
それは無理だよ
どこにもクロージャ使ってないでそ
983デフォルトの名無しさん:2008/09/02(火) 22:31:58
こいつは、メソッドレファレンスMyClass#meth()のこといってんじゃないの?
984デフォルトの名無しさん:2008/09/02(火) 22:56:47
なんだそりゃw
985デフォルトの名無しさん:2008/09/02(火) 23:09:29
Java 7の目玉機能は、クロージャだけなんですか?
986デフォルトの名無しさん:2008/09/02(火) 23:18:10
モジュール?
987デフォルトの名無しさん:2008/09/02(火) 23:24:08
>>979
その仕様はどこに書いてあるん?
なんでその例外的ルールがあるのかわらない。

それから、
F f = { int x, int y => x + y };
f.invoke(10, 100);
これはFがinvokeを持ってないので無理でしょ?
invokeはclosure literalが持つってだけで、特別なメソッドではないでしょ?
(だから>>981は無理なはず)

{int x, int y => x+y }.invoke(10,100)ができるのは分かる。
これはclosure literalがinvoke(int,int)を持つ型なので。

function typeがinvokeを持ってて、他のinterfaceの型に変換するときにそのinterfaceの持つ1つのメソッドに割り当てられるってことでは。
あと、literalに直接invoke呼ぶのはそんなに無いんじゃないだろうか。
988デフォルトの名無しさん:2008/09/02(火) 23:32:57
>>985
プロパティ構文が一番じゃね?
989デフォルトの名無しさん:2008/09/02(火) 23:36:31
こいつの主義からすれば、func.invoke(aho) じゃなくて、func(aho) とやりたいってのじゃないの?

どうせスカラー云々スクリプト云々って奴だろw
こいつの頭の中ではごっちゃになってて、サル脳だから理解できないんだろうww
990デフォルトの名無しさん:2008/09/02(火) 23:58:48
>>987
たいして仕様を読んでないようなサルの相手をすることもないんじゃないの?
君も同じく相当ヒマだろうけどw
991デフォルトの名無しさん:2008/09/03(水) 01:37:33
このスレって偉そうに言ってる奴はどこが悪いのか指摘すらできないんだよなwwww
992デフォルトの名無しさん:2008/09/03(水) 01:39:55
>>990
なら仕様を読みまくってる君が簡潔に説明してみたらいいのではないだろうか
なんでここ見てるわけ?
993デフォルトの名無しさん:2008/09/03(水) 01:45:49
>>991,992

くやしいのwwwくやしいのwwwwww
994デフォルトの名無しさん:2008/09/03(水) 02:12:41
> くやしいのwww

知らねぇのに無理して使うなよ。ほしのあきじゃねぇんだから。
くやしいのうwww
995デフォルトの名無しさん:2008/09/03(水) 02:37:51
>>994
ゴミはまだ常任してんのか。
おまえのうんちくはイランから、はよ死ね。
996デフォルトの名無しさん:2008/09/03(水) 02:42:12
くやしいのうwww くやしいのうwww (ゲラ
997デフォルトの名無しさん:2008/09/03(水) 03:00:33
何この糞www
次スレもいらんわw
998デフォルトの名無しさん:2008/09/03(水) 03:01:51
>>996
そんな雑学よりも、英語をみっちり勉強した方が自分スキル向上になるんじゃないでしょうか?
999デフォルトの名無しさん:2008/09/03(水) 03:02:38

逝 っ て よ し w
1000デフォルトの名無しさん:2008/09/03(水) 03:20:24
age 全開で自己援護に必死
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。