タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

lexerに関するmoozのブックマーク (2)

  • もう flex 使わない、これからは re2c - ひげぽん OSとか作っちゃうかMona-

    flex & bison をやめて re2c & bison にしたらパーサが速くなった。re2c は UTF32 の入力に対応しているので非常にすっきり書けるし設計も歪まない。 re2c is a tool for writing very fast and very flexible scanners. Unlike any other such tool, re2c focuses on generating high efficient code for regular expression matching. re2c は flex とは互換がなく独自のマクロなどを定義しなくてはいけないので注意。サンプルとドキュメントの少ないのもマイナスポイント。 それこそ UTF32 を利用している例なんて見つけられなかった。 re2c で多分難しいのは YYFILL (flex でいうところ

    もう flex 使わない、これからは re2c - ひげぽん OSとか作っちゃうかMona-
    mooz
    mooz 2012/02/16
    re2c がとても高速とのこと.
  • C++ でlexer/parserをかくなら re2c+lemon がオススメな件 - tokuhirom's blog

    yacc や lex をつかっていても「なんかよくわからんけどうごく」という状態になりがちだったり、グローバル変数にまみれたりしがちだが、re2c + lemon だとそのへんがすっきりする。 レキサを以下のようにかく。yyfill を自前でかかなければいけないのがちょっと面倒だが、このようなクラスを手軽にかけるのはやはり便利である。flex ではこうはいかないのだ。 #ifndef CALC_SCANNER_H_ #define CALC_SCANNER_H_ #include <stdio.h> #include <string.h> #include <string> #include <sstream> #include <vector> #include <iostream> #include <fstream> #include "scanner.def.h" #include

  • 1