2008-01-15
■ [english] うちのWikiを英語になおすと
trackfeedを見てたらこんなURLが。
- SVKを使ってみよう
- Try using SVK
- Vim覚え書き
- Vim Note
- Screenをはじめよう
- Getting Started on Screen
- ZenTestまとめ
- ZenTest at once
- びわこ開発合宿#2
- BIWAKO development camp # 2
参考になる。
■ [javascript] Javascriptとマクロ
Javascriptのすごいところは、C言語風にも書けるし、関数型言語風にも書けるという柔軟性の高さだ。 だからこそ、10年以上経った今なお「最先端」にありつづけるのだろう。
BiwaSchemeを作ってて思うのは、JavaScriptが予想よりずっとSchemeに近いこと。 整数や文字の仕様とかね。(実は参考にした?)
あとはマクロさえあれば、本当にLispになっちゃうんじゃない?と思うわけで、↓の記事にはやられた、と思った。
Narcissus(Javascript on Javascript) ってのは 知らなかったけど、ネーミングセンスがいいね(笑)。 これ、どれくらいまで実装してるんだろう。
jsthreadのパーザは Rhinoのparser.javaの移植で、1300行くらいの模様。これを使うという手もある。
言語マニア的な視点
さらに未来のことを考えてみる。
Schemeの信念である「シンプルさ」は、(R6RSが実用方面に舵を切ったとはいえ) これからも保たれるだろう。 一方のJavascriptはどうか?ECMAScript4では、「互換性を継続しつつ、より大規模なコードや複雑なアプリケーション構築にも対応できるようにしていきたい」という (@IT)。
機能を強化することは、言語の寿命を延ばすのか、縮めるのか。 言い換えれば、言語が長生きするために必要な機能とは何だろう。 Java/C#にシェアを奪われたC++のことを考えると、少なくとも「機能は多ければ多いほど良い」というものではないようだが。
追記
構文の拡張に必ずjsパーザが要るわけではないという例。うわーうわー。
<script src="heredoc.js"> str1 =<<EOT 複数行の文字列です。 下の行でおわりです。str1はグローバルになります。 EOT </script>
しかも、scirptタグの使い方を工夫することによって、普段js書くときと「変わらない感じ」で使える。やばい。