2011-11-02 42 views
0

有人能給我一個小例子如何使用Haskell編寫基本的編譯器來強制執行語言的順序?例如,如果我想編寫一種編程語言,其中「桌牀燈」是一個有效的字符串,但「牀燈表」不是,我該如何去做這件事?Haskell,編譯器,執行令牌順序?

如果有人能指出我正確的方向,我認爲我可以推斷和了解更多。

感謝

+3

這個問題太簡單了,沒有一個啓發性的最簡單的答案。這是一個無聊的功能,它完全符合你的要求:'isValid s = s ==「桌牀燈」'。 –

回答

2

您似乎已經在過去幾天提出了許多關於編譯器的非常基本的問題。首先,在嘗試着手之前,編寫一本關於編譯器的教科書並找到一些基礎,是不是更好?如果你試圖用Haskell作爲你編寫編譯器的語言,Appel的書「ML中的現代編譯器構建」將會是一個好的開始。

+0

我知道如何編寫一個編譯器.....我不知道如何編寫一個編譯器在Haskell中.... – user997112

+0

另外,如果有人向我提供了我的基本問題的答案,那麼我可以使用它來推斷。每一個haskel材料,我只包括計算器解析的例子.... – user997112