アカウント名:
パスワード:
たしかにjavaが全然openじゃないのはsun時代から言われてきたことなのにgoogleはわざわざそんな言語プラットフォームを選んで喧嘩売ってる時点で心情的には旧sunに同情するよだがoracle、てめーは駄目だ
って感情の人がおおいんでない?
逆に言語なんて、独裁者が作ったりプロプライエタリーな会社が作ったり、委員会が作った方が最終的には良いのでは?
犬は早く死ぬ訳で、せめて人間の一生のライフサイクルで推移するスパンの言語発展の過程となるプロセスが望ましく、
その委員会やらの維持のためにGoogleに金を出せというなら、それは話が通るとは思います。
Googleも言語の分野では、伽藍を目指す方がNot Evalだとおもいます。
Not Evalだとおもいます。
評価されない?:-p
ただ件のグーグル自体は「DalvikはJava互換です」とは一度も言っていないんですよ(たぶん)
AndroidソフトをそのままJavaVMでは動かせませんし、逆もしかり。 これはJavaの要求するWrite Once, Run Everyware というは方向性とは全く相いれませんし、そもそもDalvikはJavaのライセンスを受けていないわけで。
Googleは構文をその他を確信犯的に似せてるから全く無実だとは言いませんが(そこが仰っているグレーゾーンですね) 「似ているから全て著作権違反」ではIT業界は疎か、殆どのマスプロダクトが存在不能になります。 C#とかだってかなり怪しいんじゃないかな
"Run Anywhere".
OSに強く依存する実装方法をとれば Run Somewhere だったりするが。
>心配しなくてもVMのバージョン上がっただけで動かなくなるのが現実のJavaなんで
それはそもそもJavaの方向性を勘違いしてる痛い人ってだけですよ。
複数プラットフォーム、たとえばWin、Unix、Linux、FreeBSD、MacOSなどにおいて同じバージョンのJavaVMが入っているときにそのバージョン向けに開発されたJavaバイトコードが上記プラットフォームで動くか?という観点がまずあります。これが本来の、そして今でも正しい意味でもRun Anywareなわけです。
ところが、勘違いしている人は「どれだけJavaVMのバージョンが上がっていっても互換性が永久に確保される」なんていう極論に走ってしまいがちです。でも当初からそんなもん保障されていませんし喧伝もされていません。Deprecatedなメソッドひとつすら許さないような、まともなプログラマーなら即座に異常と分かるような極論ですからね。
別ACですが、> 「どれだけJavaVMのバージョンが上がっていっても互換性が永久に確保される」...> でも当初からそんなもん保障されていませんし喧伝もされていません。それは仰る通りですねー。その点は同意。
で、元ACの発言から離れた話をしますけども、> 複数プラットフォーム、たとえばWin、Unix、Linux、FreeBSD、MacOSなどにおいて> 同じバージョンのJavaVMが入っているときに...> これが本来の、そして今でも正しい意味でもRun Anywareなわけです。その本丸がnowhereなわけで(SWTでなんでnotification機能いれちゃったの!!とか。いや頑張れば全プラットフォームで動くけどコード共通化できないし)あ、いや、こったUIとか色気のないロジックだけのコードなら達成できそうですけどね。(まあFlashだって似たようなモノ、、、ってFlexってSunだかに金はらってんだっっけ?)# AnyWAREってtypoじゃないんですかね(たぶんanywhereのことかと)もしかして私がしらないだけでgoslingが言ってたとか?
そもそも、Oracle(Sun)が提供してきたJavaVMでさえ、バージョンの違いで動作したりしなかったりするわけで、互換性と言えば互換性はないと思う。"Write Once Run Anywhere"は、Javaがこの世に提供されて以来、最初のバージョン以外では実現したことは無いよね。最初のバージョンだけは実現していたのは、それしかなかったから。
#2166177のAC氏が言うようにwrite onceのonceは複数バージョンでも動くとはだれも言っていない(はず)です。まあ、双方具体的なソースや事例がないので妄想像レベルですけど。。。1.2か1.3のjumpのときにそうとうアレでしたのでお気持ちは察しますがね。
# 1.3以前はバージョンアップで結構動作しなくなったけど、以降はまだましになった気がしてます。もっともそのせいか、target versionが未だに1.4.2のプロジェクトが多くてまいっちんぐ。
"Write Once, Run Anywhere"って簡単な英語にして、理解するには哲学的に難解な言葉なんですね。
あなたの主張通りなら、"Write Once, Run Somewhere"か、"Write many times, Run Anywhere"じゃないの?
普通は、"Anyhere"の「どこででも」には、「どのバージョンでも、どの環境でも」という意味だと思うよ。ハッキリ言ってなくても、そう解釈されるのが普通だ。
"Anyhere"とは言い得て妙ですね。
# テストが楽そう
>普通は、"Anyhere"の「どこででも」には、「どのバージョンでも、どの環境でも」という意味だと思うよ。>ハッキリ言ってなくても、そう解釈されるのが普通だ。
そんな解釈は普通しません。また哲学的でもありません。あなたの認識が極端すぎるだけです。
たとえばあなたは、「JavaVMが入っていない環境でもJavaバイトコードは動かなければならない」と叫んでいます。この異常性は理解できますか?
どこでも、などいわゆる5W1Hに類する意味には必ず現実的な制限があります。今回の件で言えば開発におけるターゲットである特定バージョンのJavaVMとセット、なわけですね。そして最初からそういう話でしか宣伝されていません。
世の中のほとんどの人間はそれを暗黙的に理解しており、それは哲学的でもなんでもありません。おそらく中学生くらいでほとんどの人間が理解することでしょう。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson
まだ最高裁がある (スコア:1)
Re:まだ最高裁がある (スコア:3, すばらしい洞察)
たしかにjavaが全然openじゃないのはsun時代から言われてきたことなのに
googleはわざわざそんな言語プラットフォームを選んで喧嘩売ってる時点で心情的には旧sunに同情するよ
だがoracle、てめーは駄目だ
って感情の人がおおいんでない?
Re: (スコア:0)
逆に言語なんて、独裁者が作ったりプロプライエタリーな会社が作ったり、
委員会が作った方が最終的には良いのでは?
犬は早く死ぬ訳で、せめて人間の一生のライフサイクルで推移するスパンの
言語発展の過程となるプロセスが望ましく、
その委員会やらの維持のためにGoogleに金を出せというなら、それは話が
通るとは思います。
Googleも言語の分野では、伽藍を目指す方がNot Evalだとおもいます。
Re:まだ最高裁がある (スコア:1)
評価されない?:-p
Re:まだ最高裁がある (スコア:1)
Re: (スコア:0)
ただ件のグーグル自体は「DalvikはJava互換です」とは一度も言っていないんですよ(たぶん)
AndroidソフトをそのままJavaVMでは動かせませんし、逆もしかり。 これはJavaの要求する
Write Once, Run Everyware というは方向性とは全く相いれませんし、そもそもDalvikは
Javaのライセンスを受けていないわけで。
Googleは構文をその他を確信犯的に似せてるから全く無実だとは言いませんが(そこが仰っている
グレーゾーンですね) 「似ているから全て著作権違反」ではIT業界は疎か、殆どのマスプロダクトが
存在不能になります。 C#とかだってかなり怪しいんじゃないかな
Re: (スコア:0)
"Run Anywhere".
OSに強く依存する実装方法をとれば Run Somewhere だったりするが。
Re: (スコア:0)
Re: (スコア:0)
>心配しなくてもVMのバージョン上がっただけで動かなくなるのが現実のJavaなんで
それはそもそもJavaの方向性を勘違いしてる痛い人ってだけですよ。
複数プラットフォーム、たとえばWin、Unix、Linux、FreeBSD、MacOSなどにおいて
同じバージョンのJavaVMが入っているときに
そのバージョン向けに開発されたJavaバイトコードが
上記プラットフォームで動くか?という観点がまずあります。
これが本来の、そして今でも正しい意味でもRun Anywareなわけです。
ところが、勘違いしている人は
「どれだけJavaVMのバージョンが上がっていっても互換性が永久に確保される」
なんていう極論に走ってしまいがちです。
でも当初からそんなもん保障されていませんし喧伝もされていません。
Deprecatedなメソッドひとつすら許さないような、
まともなプログラマーなら即座に異常と分かるような極論ですからね。
Re:まだ最高裁がある (スコア:1)
別ACですが、
> 「どれだけJavaVMのバージョンが上がっていっても互換性が永久に確保される」
...
> でも当初からそんなもん保障されていませんし喧伝もされていません。
それは仰る通りですねー。その点は同意。
で、元ACの発言から離れた話をしますけども、
> 複数プラットフォーム、たとえばWin、Unix、Linux、FreeBSD、MacOSなどにおいて
> 同じバージョンのJavaVMが入っているときに
...
> これが本来の、そして今でも正しい意味でもRun Anywareなわけです。
その本丸がnowhereなわけで(SWTでなんでnotification機能いれちゃったの!!とか。いや頑張れば全プラットフォームで動くけどコード共通化できないし)
あ、いや、こったUIとか色気のないロジックだけのコードなら達成できそうですけどね。(まあFlashだって似たようなモノ、、、ってFlexってSunだかに金はらってんだっっけ?)
# AnyWAREってtypoじゃないんですかね(たぶんanywhereのことかと)もしかして私がしらないだけでgoslingが言ってたとか?
Re: (スコア:0)
そもそも、Oracle(Sun)が提供してきたJavaVMでさえ、バージョンの違いで動作したりしなかったりするわけで、互換性と言えば互換性はないと思う。
"Write Once Run Anywhere"は、Javaがこの世に提供されて以来、最初のバージョン以外では実現したことは無いよね。
最初のバージョンだけは実現していたのは、それしかなかったから。
Re: (スコア:0)
#2166177のAC氏が言うようにwrite onceのonceは複数バージョンでも動くとはだれも言っていない(はず)です。
まあ、双方具体的なソースや事例がないので
妄想像レベルですけど。。。1.2か1.3のjumpのときにそうとうアレでしたのでお気持ちは察しますがね。
# 1.3以前はバージョンアップで結構動作しなくなったけど、以降はまだましになった気がしてます。もっともそのせいか、target versionが未だに1.4.2のプロジェクトが多くてまいっちんぐ。
Re: (スコア:0)
"Write Once, Run Anywhere"って簡単な英語にして、理解するには哲学的に難解な言葉なんですね。
あなたの主張通りなら、"Write Once, Run Somewhere"か、"Write many times, Run Anywhere"じゃないの?
普通は、"Anyhere"の「どこででも」には、「どのバージョンでも、どの環境でも」という意味だと思うよ。
ハッキリ言ってなくても、そう解釈されるのが普通だ。
Re:まだ最高裁がある (スコア:1)
"Anyhere"とは言い得て妙ですね。
# テストが楽そう
-- う~ん、バッドノウハウ?
Re: (スコア:0)
>普通は、"Anyhere"の「どこででも」には、「どのバージョンでも、どの環境でも」という意味だと思うよ。
>ハッキリ言ってなくても、そう解釈されるのが普通だ。
そんな解釈は普通しません。
また哲学的でもありません。
あなたの認識が極端すぎるだけです。
たとえばあなたは、
「JavaVMが入っていない環境でもJavaバイトコードは動かなければならない」
と叫んでいます。
この異常性は理解できますか?
どこでも、などいわゆる5W1Hに類する意味には
必ず現実的な制限があります。
今回の件で言えば開発におけるターゲットである
特定バージョンのJavaVMとセット、なわけですね。
そして最初からそういう話でしか宣伝されていません。
世の中のほとんどの人間はそれを暗黙的に理解しており、
それは哲学的でもなんでもありません。
おそらく中学生くらいでほとんどの人間が理解することでしょう。