ふつうのコンパイラをつくろうを読み始めた。
JavaCCを使ったAdderの写経。
options { STATIC = false; } PARSER_BEGIN(Adder) import java.io.*; class Adder { static public void main(String[] args) { for (String arg: args) { try { System.out.println(evaluate(arg)); } catch (ParseException ex) { System.err.println(ex.getMessage()); } } } static public long evaluate(String src) throws ParseException { Reader reader = new StringReader(src); return new Adder(reader).expr(); } } PARSER_END(Adder) SKIP: { <[" ","\t","\r","\n"]> } TOKEN: { <INTEGER: (["0"-"9"])+> } long expr(): { Token x, y; } { x=<INTEGER> "+" y=<INTEGER> <EOF> { return Long.parseLong(x.image) + Long.parseLong(y.image); } }
イマイチよくわからないのは慣れてないせいか?パーサだったらRWHのParsecが楽しかった。
Scalaも調べたらスライド見つけた。あとで試してみようっと。
ふつうのコンパイラをつくろう 言語処理系をつくりながら学ぶコンパイルと実行環境の仕組み
Real World Haskell―実戦で学ぶ関数型言語プログラミング








イチジク―栽培から加工・売り方まで (新特産シリーズ)
Scheme修行
社会ネットワーク分析の基礎―社会的関係資本論にむけて
ネットワーク分析 (Rで学ぶデータサイエンス 8)
こどもピーマン タキイ交配ピー太郎 タキイ種苗のこどもピーマンの種です
HTML5&CSS3実践入門 最新Web標準を使いこなす (The Pragmatic Programmers)
Jenkins実践入門 ~ビルド・テスト・デプロイを自動化する技術 (WEB+DB PRESS plus)



NHK趣味の園芸 やさいの時間 有機栽培もOK!プランター菜園のすべて (生活実用シリーズ)