• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            cyt

            很久以前見識過spirit,覺得十分好用。不過spirit越做越龐大,對編譯器的要求越來越高,加上加入了boost,龐大的讓我卻步。有時候想簡單用一下,實在不忍心引入boost這個龐然大物。

            今天看到一個The Parser Toolkit http://sourceforge.net/projects/theptk/?作者號稱受到spirit的啟發做的。程序比較簡短,就兩個頭文件,幫助也比較清晰,功能不算十分強勁,但也夠用了。

            之所以喜歡spirit、theptk之類的東西而不喜歡用yacc之類的,主要是不喜歡程序需要預處理,而且代碼這樣比較直觀,和C++結合比較好。

            posted on 2005-10-08 14:49 cyt 閱讀(812) 評論(4)  編輯 收藏 引用
            Comments
            • # re: 除了spirit的另一個選擇
              Exile_
              Posted @ 2005-10-22 03:57
              codeproject 上有一個 yard 庫, 也很簡單,同時他對于文法的定義沒有采用操作符重載的形式,比如也就省去了對于臨時對象的管理,效率更高.
              比如 rule<input_t> E = F || T;
              變為 struct E : or_<E, T> {};  回復  更多評論   
            • # re: 除了spirit的另一個選擇
              cyt
              Posted @ 2005-10-23 21:16
              多謝介紹!

              yard這個project可以在 http://sourceforge.net/projects/yard-parser/找到,另外作者主頁在 http://www.cdiggins.com/; codeproject上也有一些相關的介紹文章:

              http://www.codeproject.com/cpp/yard-xml-parser.asp

              http://www.codeproject.com/cpp/yard-tokenizer.asp

                回復  更多評論   
            • # re: 除了spirit的另一個選擇
              eXile
              Posted @ 2005-10-24 14:12
              我簡單地看了一下 theptk 的實現, 發現有兩個不爽的地方:
              1. shared_ptr的使用和 weak_ptr 的古怪設計, 如果在設計時明確的區分 rule 和 grammar_p 的概念,這兩個智能指針是完全可以不用的;
              2. 事件機制的設計, 不直觀,太復雜 為什么不像 spirit 一樣用操作符[] 實現語義動作呢? 這樣實現并不復雜, 象 Biscuit parser庫(這是一個在 yard 基礎上設計出來的庫,也可在codeproject 上找到) ,就加了一個actor_分析器,實現語義動作.  回復  更多評論   
            • # re: 除了spirit的另一個選擇
              cyt
              Posted @ 2005-10-24 17:27
              應該是不難實現的。
              另外很不爽的一個地方就是處理語義的地方,沒有傳入參數,也就是說一段代碼只能夠有一種處理語義的方法。
              作者只發布了一個版本,到現在沒有更新,作者也沒有再出現過,都不知道作者是不是已經放棄這個東西了……  回復  更多評論   
             
            日本久久中文字幕| 国产精品一久久香蕉产线看| 国产综合成人久久大片91| 久久精品一区二区三区中文字幕| 久久久久亚洲av毛片大| 国内精品九九久久精品| 久久九九青青国产精品| 久久人妻少妇嫩草AV蜜桃| 国产精品禁18久久久夂久| 久久精品国产欧美日韩99热| 狠色狠色狠狠色综合久久 | 久久精品毛片免费观看| 国产精品久久永久免费| 伊人久久五月天| 99久久精品国产综合一区| 亚洲国产精品无码久久| 亚洲а∨天堂久久精品9966| 久久精品国产一区二区三区日韩| 久久99热这里只有精品66| 国产ww久久久久久久久久| 久久久一本精品99久久精品66| 一极黄色视频久久网站| 久久人妻少妇嫩草AV蜜桃| 色综合久久88色综合天天 | 香蕉久久夜色精品国产小说| 久久精品国产AV一区二区三区| 久久久久国产一区二区三区| 伊人久久大香线蕉影院95| 69久久夜色精品国产69| 99国产精品久久| 精品综合久久久久久97超人 | 久久精品视屏| 久久久久黑人强伦姧人妻| 日韩欧美亚洲综合久久影院d3| 久久er99热精品一区二区| 久久午夜无码鲁丝片| 久久人人妻人人爽人人爽| 久久99精品国产自在现线小黄鸭| 人妻无码αv中文字幕久久琪琪布 人妻无码久久一区二区三区免费 人妻无码中文久久久久专区 | 武侠古典久久婷婷狼人伊人| 久久99久久成人免费播放|