タグ

JSXに関するUSAGI-WRPのブックマーク (6)

  • JSXのgeneratorで同期的なsleep()を実装してみる - Islands in the byte stream (legacy)

    [追記]v0.9.84現在、--enable-generator-emulationが必要です。これを付けないと、ES6のgeneratorを使うようにコンパイルされます。[/追記] 最近、JSの非同期まわりが新しい盛り上がりがありました。 Google Chromeに入ったジェネレータとPromiseで非同期処理に革命が起きた - 素人がプログラミングを勉強していたブログ 2013-05-02 とくにES6のgeneratorを使えば、非同期コードを同期的に書けるようになるということで期待が持てます。 ところで、JSXにも最近実験的にgeneratorが実装されました*1。生成されるJavaScriptはES5準拠ですから、スマートフォンでも実行可能です。 すなわち、これが格的に使えるようになれば、ブラウザの対応を待たずにgeneratorが使い放題になるというわけですね!genera

    JSXのgeneratorで同期的なsleep()を実装してみる - Islands in the byte stream (legacy)
  • よーし、パパ酔った勢いでJSXに盛り上がっている連中をdisっちゃうよ〜 - mitamex4uの日記

    念のため書いておくけど、俺はJSXの開発者をdisったりはしない。 俺は車輪の再発明が好きだし、何よりモノを作る人間は素晴らしい。 しかし俺は今JSXに盛り上がっている連中にとてつもなく違和感を感じている。 JSXが登場した時にはすでにHaxeがあった。 JSXは開発途上だから今後に期待するが、現時点ではHaxeの方がはるかに洗練された言語であることは間違いない。 もう一度言うぞ。現時点ではHaxeはJSXより間違いなく優れている。 俺は静的型付け言語が好きだと言った。だがな、型はプログラミングを楽にするためのものであって、型のためにプログラミングするのは嫌なんだよ。 大人が誰も言わないなら俺が言ってやる。 型推論の無い静的型付け言語はクソだ。 型推論の無い静的型付け言語をありがたがって使う奴はドMだ。 JSXは現状では型のためにプログラミングする言語だ。 でもいいんだよ。JSXはまだ出て

    よーし、パパ酔った勢いでJSXに盛り上がっている連中をdisっちゃうよ〜 - mitamex4uの日記
  • JSXよりHaxeがイケてる3つの理由 - みずぴー日記

    Javascriptを生成できる言語『JSX』がリリースされました。めでたいですねー。 ただ同じくJavascriptを生成きるHaXeのことが忘れられている気がするので、宣伝します。 ステマじゃないよ! 型推論がイケてる 現時点でJSXには型推論が実装されてないので、関数を定義するには全ての型を書く必要があります。 // JSXだよ! function add(x : number, y : number) : number { return x + y; } これだけなら特に問題ないように見えますが、これが高階関数を定義しようとするとどんどん複雑になっていきます。 // JSXだよ! function f(g: function(:number):number): function(:number):number { return function(x: number): number

    JSXよりHaxeがイケてる3つの理由 - みずぴー日記
  • JSX のアレな所 - ぐるぐる~

    注意!このエントリは既に古いので、JSX の進化速度が半端ない - ぐるぐる〜もあわせて読んでください。最新のコードを参照するのが手っ取り早いです。 JSX なる言語がリリースされました。 この言語が謳っているのが、 高速 安全 簡単(生産性が高い、とも) という 3 点です。 高速と安全はまぁいいでしょう*1。 問題は、はたしてこの言語は簡単なのか?という点です。 簡単かどうかは人によるのでアレなのですが、まぁ一部の人にとっては簡単とは言えない (というか書く気がしない) 書き方を強制されるのです。 関数型 数値を受け取って文字列を返す関数を表す型は、JSX では以下のように書きます。 function(:number):string これ単体で見ると分かりやすそうな気配はします。 では、これ読めますか? function f(g: function(:number):number):

  • JSX - a faster, safer, easier JavaScript

    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

  • JSX はなぜ「速い」のか - kazuhoのメモ置き場

    なぜ「速い」のか、について JSX 開発者の立場から。 たとえば、シューティングゲームで一番重たい処理は何か。言うまでもなく衝突判定。多数の弾や敵機の衝突判定を毎フレームごとに行う必要があり、この演算が重たい。 JSX に同梱されている web/example/shooting.jsx には衝突判定のコードが複数あるが、一番重たいのは Bullet#update 関数で、その処理は以下のようになっている*1。 for (var rockKey in st.rocks) { var rock = st.rocks[rockKey]; if (this.detectCollision(rock)) { if (rock.hp == 0) return false; inDisplay = false; if (--rock.hp == 0) { st.score = Math.min(st.s

    JSX はなぜ「速い」のか - kazuhoのメモ置き場
  • 1