Narcissus 自分自身を愛した美少年JavaScript

Narcissus
自分自身を愛した美少年
JavaScript
株式会社アクセラートジャパン
代表取締役 小林悠
Brendan Eich




Mozilla Corp. CTO
JavaScript@Netscape 2.0
JavaScript@Mozilla
JavaScript on JavaScript
Narcissus
↓
JavaScriptバカ
JavaScriptの父
Narcissus

美少年@ギリシャ神話

水面に映った自分に恋
をした
↓
バカ
使ってみた
ドキュメント0
コメント0
(Wikipedia英語版に書きました)
ベンチマーク
35.891
Narcissus
時間
SpiderMonkey
0.234
0
10
20
30
40
でも
世界1美しい文法
の
世界1美しい実装
世界1美しい文法
 プログラミング言語
=文脈自由文法+例外
 C++は例外だらけ
JavaScriptは例外が非常に少ない
世界1美しい実装
行数
パーサー
954行
実行エンジン
897行
予約語定義
125行
ランチャー
7行
Do-Whileの実装
case DO:
do {
try {
execute(n.body, x);
} catch (e if e == BREAK && x.target == n) {
break;
} catch (e if e == CONTINUE && x.target == n) {
continue;
}
} while (getValue(execute(n.condition, x)));
break;
IFのパース
case IF:
n = new Node(t);
n.condition = ParenExpression(t, x);
x.stmtStack.push(n);
n.thenPart = Statement(t, x);
n.elsePart = t.match(ELSE) ? Statement(t, x) : null;
x.stmtStack.pop();
return n;
コメント0なのは
その美しさ故であった!
Narcissusは
自分を愛した美少年
ご静聴
ありがとうございました