アカウント名:
パスワード:
手元で用意できるUbuntu上でbuildしてみました。x64環境だとia32用のcompile環境も必要なようで(--arch=x64だとbuildでコケる)
http://code.google.com/p/dart/wiki/PreparingYourMachine [google.com]
この辺を参考にいろいろぶちこんでみました
d8というreplとdart_binというスクリプト実行用コマンド、dartcというJSコンパイラができましたd8はまだまだ機能不足で実用的じゃないですね
当面はdartスクリプトを書いてdart_binで実行、という感じでしょうか書いたdartスクリプトはdartcでJSへ変換できるのですが…
https://gist.github.com/1277224 [github.com]
簡単なHelloWorldのdartをjsへコンパイルしたら17259行のjavascriptファイルができて盛り上がってる状況です
google的にはブラウザにdart実行環境を実装するのが目標のようですが…dart->jsでできたスクリプトをブラウザで読み込むのは正直現実的ではないかも
#サンプルのwebアプリをコンパイルしたらjsファイルが10MBぐらいになったし…
とりあえず転送経路的な意味だけで言っても、今時圧縮転送に対応していない Web ブラウザーも Web サーバーもレアですから。
もしかして: jar
何か昔のC言語論争を思い出した。
HelloWorldをコンパイルしたらウン10KBになったってヤツ……C言語は糞だ、アセンブラ最高だぜって結論だったよね……
# ライブラリをダイナミックリンクできなきゃそうなるよね
まあそうなんですけどね。にしても許容できる範囲かといわれると現時点では正直無理ですね。明らかに重いですから。ブラウザがフリーズしたかと思いましたもん
まあjs -> dartというパラダイムシフトを狙ってたとしてもこれがそのつなぎを担えるかと言われるとちょっと「?」という感じです
せめてvmを乗っけたchromiumでも用意して「ほら!jsみたいにdart実行できるんだよ!」みたいなことができるようにしてから出しても良かったんじゃ…という気はします
MS-DOS時代の話ですかね。printfみたいな太りすぎのをstaticでリンクするからでかくなるので、fputsに変えるだけで結構小さくなりますね。
それでもアレだという場合、必要最小限のスタートアップをアセンブラで書いておいて、DOSのシステムコールを呼ぶとこをインラインアセンブラかアセンブラで書けばかなりHello,worldを小さくできるです。で、そうまでしてでもCで書きたいという場合もあったり、あと組込みだと、このような経験が結構役に立ったり。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
犯人はmoriwaka -- Anonymous Coward
とりあえず (スコア:3)
手元で用意できるUbuntu上でbuildしてみました。x64環境だとia32用のcompile環境も必要なようで
(--arch=x64だとbuildでコケる)
http://code.google.com/p/dart/wiki/PreparingYourMachine [google.com]
この辺を参考にいろいろぶちこんでみました
d8というreplとdart_binというスクリプト実行用コマンド、dartcというJSコンパイラができました
d8はまだまだ機能不足で実用的じゃないですね
当面はdartスクリプトを書いてdart_binで実行、という感じでしょうか
書いたdartスクリプトはdartcでJSへ変換できるのですが…
https://gist.github.com/1277224 [github.com]
簡単なHelloWorldのdartをjsへコンパイルしたら17259行のjavascriptファイルができて
盛り上がってる状況です
google的にはブラウザにdart実行環境を実装するのが目標のようですが…
dart->jsでできたスクリプトをブラウザで読み込むのは正直現実的ではないかも
#サンプルのwebアプリをコンパイルしたらjsファイルが10MBぐらいになったし…
Re:とりあえず (スコア:1)
Re:とりあえず (スコア:1)
とりあえず転送経路的な意味だけで言っても、今時圧縮転送に対応していない Web ブラウザーも Web サーバーもレアですから。
Re: (スコア:0)
もしかして: jar
Re: (スコア:0)
何か昔のC言語論争を思い出した。
HelloWorldをコンパイルしたらウン10KBになったってヤツ……
C言語は糞だ、アセンブラ最高だぜって結論だったよね……
# ライブラリをダイナミックリンクできなきゃそうなるよね
Re:とりあえず (スコア:2)
まあそうなんですけどね。にしても許容できる範囲かといわれると
現時点では正直無理ですね。
明らかに重いですから。ブラウザがフリーズしたかと思いましたもん
まあjs -> dartというパラダイムシフトを狙ってたとしてもこれが
そのつなぎを担えるかと言われるとちょっと「?」という感じです
せめてvmを乗っけたchromiumでも用意して「ほら!jsみたいにdart実行できるんだよ!」
みたいなことができるようにしてから出しても良かったんじゃ…という気はします
Re:とりあえず (スコア:2)
MS-DOS時代の話ですかね。printfみたいな太りすぎのをstaticでリンクするから
でかくなるので、fputsに変えるだけで結構小さくなりますね。
それでもアレだという場合、必要最小限のスタートアップをアセンブラで書いておいて、
DOSのシステムコールを呼ぶとこをインラインアセンブラかアセンブラで書けばかなり
Hello,worldを小さくできるです。で、そうまでしてでもCで書きたいという場合もあったり、あと組込み
だと、このような経験が結構役に立ったり。