Kei Nakazawa @muo_jp https://t.co/cVgJrfc3 JSXからJSコード生成周辺の最適化ここらかな。クラスや関数を出来る限りfinalに、即値演算をプリプロセス、5ステートメント以内でローカル変数を含まない関数をインライン展開、単純なif-ret展開ってとこか。かっこいいやだー #jsx 2012-05-31 08:16:35
![JSX](https://cdn-ak-scissors.b.st-hatena.com/image/square/b813891d9da4bec6f1c50e30fe7de9d2165aa840/height=288;version=1;width=512/https%3A%2F%2Fs.togetter.com%2Fogp2%2Ff3f2998c6dbd04532a3d0614b07f2896-1200x630.png)
Kei Nakazawa @muo_jp https://t.co/cVgJrfc3 JSXからJSコード生成周辺の最適化ここらかな。クラスや関数を出来る限りfinalに、即値演算をプリプロセス、5ステートメント以内でローカル変数を含まない関数をインライン展開、単純なif-ret展開ってとこか。かっこいいやだー #jsx 2012-05-31 08:16:35
DeNAは5月31日、Webアプリケーション向けの言語「JSX」を公開した。静的型付けやオブジェクト指向といった特徴を持つWebアプリケーション向け言語で、JavaScriptコードへの変換を行うコンパイラが用意されている。ライセンスはMITライセンス。 JSXは「生産性が低い」、「低速」、「メモリ消費が多い」といったJavaScriptの問題点を解決するために開発されたプログラミング言語。厳密な型付け機構を持つオブジェクト指向言語で、JSXコードはJavaScriptコードへと変換して実行できる。JSXコードから変換されたJavaScriptコードは最適化が施されており、「現代的な」Webブラウザ上で高速に動作するという。 JSXにはJavaのようなクラス機構やガベージコレクションが用意されており、高い生産性、高い品質のコードを記述できるという。JavaScriptへのコード変換機構を持
下のようなエラーが出たけど、sudo port upgrade opensslで直ったよ。 JSX[master]$ make setup npm install npm http GET https://registry.npmjs.org/browserbuild dyld: lazy symbol binding failed: Symbol not found: _SSL_CTX_set_next_proto_select_cb Referenced from: /opt/local/bin/node Expected in: /opt/local/lib/libssl.1.0.0.dylib dyld: Symbol not found: _SSL_CTX_set_next_proto_select_cb Referenced from: /opt/local/bin/node
jquery-1.7.jsxを作って、さっきの全部自分でキャストしていたバージョンに比べてだいぶ見やすくなりました。 import "jquery-1.7.jsx"; class _Main { static function main(args : string[]) : void { var value : string = jQuery.as_func("p").get(0).innerHTML; log value + "---" + value; jQuery.as_func("p").get(1).innerHTML = "piyo"; } }つまづいたところはまず「関数であり、かつメンバも持っている」というUnionな型を定義する方法がない点。とりあえずjQuery.as_funcってメソッドで関数としてキャストしたものを返すようにしてみた。(しかしこういう実体のあるメソッド
jQueryなどのような静的型付けのことを何も考えていないサードパーティ製のライブラリをJSXから使えるか? 使えたので報告。 もっとハマるかと思ったけど意外と素直に書けた。mainの最初の1行と最後の2行で「jQueryで最初のpタグを取得してそのinnerTextを取得し、文字列として編集してからコンソール出力」をやっている。間の5行のlogは答えにたどり着く過程を残してある。 import "js.jsx"; class _Main { static function main(args : string[]) : void { var jQuery = js.global["$"] as function(:string):variant; log jQuery; log jQuery("p"); log (jQuery("p") as __noconvert__ Map.<var
完全に外部から見た感想なんだけど 「Arctic.js」公開時に色々揉めたけど、オープンソースにすることを会社が支援していることが印象的だった。 で、すぐに MIT に変更した時点で会社が支援してくれていることと、法務も含め柔軟に対応していると感じた。 JSX 公開で前回揉めたにも関わらず更にオープンソースに出すことによって、会社が挑戦的な事を続ける心意気があることを感じた。 って事で俺的には DeNA という会社に対しての好感度は少なくとも上がっている。 素直にそういうところはいいなぁと思う。
Kazuho Oku @kazuho 公開ed! ウェブブラウザ上で JavaScript より速く動作するプログラミング言語です。よろしくお願いします m(__)m / “JSX - a faster, safer, easier alternative to Java…” http://t.co/UdsmdvI3 2012-05-31 07:52:09 Takuto Wada @t_wada DeNA が開発したオブジェクト指向、静的型付け、(ほとんど)型安全なプログラミング言語。コンパイルすると JavaScript が生成される。ライセンスは MIT. / “JSX - a faster, safer, easier …” http://t.co/eONyUpS8 2012-05-31 08:15:41
> (...) even the optimized JavaScript libraries like Box2D becomes faster when ported to JSX.Box2D is a C++ library that has been ported to ActionScript and then, from ActionScript, converted to JavaScript - not by hand, but by a bunch of scripts[1]. The JS version of Box2D still carries around a lot of unnecessary weight from the original C++ and ActionScript versions and has much room for improv
表示中のページから http://pyppet.blogspot.com/2011/04/rpython-to-javascript.html にリダイレクトしようとしています。 このページにリダイレクトしないようにする場合は、前のページに戻ってください。
JSX is a statically-typed, object-oriented programming language designed to run on modern web browsers. Being developed at DeNA as a research project, the language has following characteristics. faster JSX performs optimization while compiling the source code to JavaScript. The generated code runs faster than an equivalent code written directly in JavaScript. The gain may vary, but even the optimi
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く