* OCaml をブラウザでクライアント側で実行できたら面白い [#v68c480a] という話になり、皆で検討した。 そういえば、アラン・ケイもそんなことを言っていた。 http://itpro.nikkeibp.co.jp/a/it/alacarte/interview0626/alan_5.shtml >Webの技術は遅々として進歩しない。例えば、言語「Logo」のことを記述したWikipediaのページをみても、そこでLogoのプログラムを実行することさえできない。今のコンピュータは、昔の「Apple II」に比べれば1万倍も高速化しているというのに。 どう実装したらいいだろう。検討で出た案。 + OCamlのソースを Javascript に翻訳して実行。 + OCamlにバイトコードを吐いてもらう。それを Jythonみたいに Javaのバイトコードにして、Javaアプレットとして実行。あるいは、javascriptで解釈して実行。 1.の案に集まったアイディア。 - まずは、いきなり OCaml を目指さずに、MinCamlくらいの、単純なソースを読み込むことを目標にしよう。 - OCamlに構文チェックしてもらって、正しいソースだけを相手にすればもっと楽だ。 - Scheme2Js が参考になりそうだ。 - [[JavaをJavaScriptに変換するグーグルのツールを使ってみよう:http://www.atmarkit.co.jp/fwcr/rensai/googlewebtoolkit01/01.html]]をOCamlでやろうとしているわけで、壮大な話です。 -- [[げんま]] &new{2006-12-10 (日) 00:22:44}; #comment 2.の案には、 - OCamlに、 Java や、 .NET や、 Parrot のバイトコードを吐いてもらえないか。 - あるいは、SpiderMonkeyのバイトコードとか? -- [[げんま]] &new{2006-12-06 (水) 11:08:46}; - 今日ガリグ先生にこの話をしたら、 [[JavaCaml:http://www.ocaml-programming.de/javacaml/manual/]] を教えてくれました。 OCamlのバイトコードをJavaのバイトコードに変換して、Java アプレットとして実行するのだとか。 -- [[げんま]] &new{2006-12-06 (水) 16:11:00}; - JavaCamlのサイトにも少し書いてありますが、OCamlのバイトコードの命令語は数も少なく難しくありません。JavaCamlを手直しするか、直接バイトコードインタープリターをJavaScriptで書くあたりが一番簡単な気がします。(ただ、それだと、あまり型論理とかの勉強にはならないかも・・・) -- [[ogasawara]] &new{2006-12-06 (水) 18:06:16}; - SPARCをJavaScriptでエミュレートしてMinCamlに吐かせたネイティブコードを実行する、という案もげんまさんからでてましたよ。 -- [[下村]] &new{2006-12-06 (水) 21:39:24}; - うん、言ってはみたものの、バイトコードを解釈するほうがずっといいことに後から気づいた。 -- [[げんま]] &new{2006-12-07 (木) 02:58:07}; #comment OCamlに別のバイトコードを吐かせる議論は [Caml-list] Alternative Bytecodes for OCaml http://caml.inria.fr/pub/ml-archives/caml-list/2004/08/87b02814a0a37006562b51b979dcaf47.en.html でもあったようだ。 #comment