嘿,這是我在Stack Overflow上的第一個問題,我想知道是否我可以問那些比我更瞭解Python和Parser Generators的人的建議。對Python解析器生成器的建議
我已經給了一個任務,我必須爲簡單的C語言創建一個解析器。我可以使用任何編程語言和工具來創建解析器,但我同時學習Python,因此它是我的首選。
我的解析器必須遵循幾個限制。首先,它必須能夠在包含以下信息的文本文件閱讀:
kind1 : spelling1
kind2 : spelling2
kind3 : spelling3
.
.
.
kindn : spellingn
其中每一種和拼寫指的是語言的令牌類型和值。該文件是通過語言的詞法分析器添加代碼示例的結果。
其次,我必須能夠自定義解析器的輸出。理想情況下,我想輸出一個已將類型轉換爲文本的文件:拼寫列表轉換爲另一個將傳遞給語言編譯器以轉換爲MIPS彙編代碼的令牌序列。下面是這種事情的一個小例子,我想解析器能夠產生:
%function int test
%variable int x
%variable int y
%begin
%if %id y , %id x > %do
%begin
%return %num 0
%end
%return %num 1
%end
這將是一個很大的幫助,如果有人能在現有的Python解析器生成勸我,如果我能在上面的例子中實現我正在尋找的東西。
感謝您的建議。我一定會看看PyParsing。 – greenie 2009-11-21 18:10:09