interpreter

    0熱度

    1回答

    作爲學習Ruby的一部分,我試圖實現一個基本的解釋器,它讀取輸入並進行基本的算術計算。到目前爲止,基本的算術運算正在工作,但在運算符優先級上有問題哪些還沒有處理。這是代碼。我在初學者水平。此代碼中的任何錯誤都是由於我缺乏知識。如何修改此代碼以處理運算符優先級。 示例輸出 2+2+2 = 6 #correct 10+10/2 = 10 # incorrect as in irb answer mu

    3熱度

    2回答

    我試圖在F#中編寫一個解釋器。我想檢查表達式的類型。 這裏是我的表達 type Expr = | Integer of int | String of string | Boolean of bool 這是我使用與 let checkType (e:Expr) = match e with | String s -> s | Integer i -> i | Boolean b

    -1熱度

    2回答

    本質上,我爲Java Au Naturel烏龜程序構建了一個非常簡潔的指向並點擊的IDE。其中最關鍵的部分是我目前的翻譯。我已經從頭開始構建了各個部分,以便將命令正確寫入列表,然後解析列表並執行相關方法。 不幸的是,這一直是我與管道膠帶的編程等價物一起舉辦的,以便讓我的概念驗證脫離實際,現在除了特定於龜的方法之外還做其他任何事情(思考循環,變量,條件語句)正在讓我難倒。 我已經編寫了一個使用真正的

    5熱度

    2回答

    我正在運行一個Julia腳本,但希望解釋器在腳本執行後保持打開狀態。 E.g.當我運行julia example.jl時,我希望腳本能夠運行,然後解釋器保持打開狀態,以便我可以對結果進行試驗。 這可能嗎? 謝謝!

    0熱度

    1回答

    我想在一個簡單的命令式語言中編寫一個在haskell中的解釋器。 爲此,我首先爲該工具BNFC編寫了該語言的Gramar(http://bnfc.digitalgrammars.com/)。該語法 部分專門算術表達式,如: EAdd. Expr ::= Expr "+" Expr ; EMinus. Expr ::= Expr "-" Expr ; EMul. Expr ::= Expr

    3熱度

    1回答

    我需要使用Python 3.5而不是2.7。但是我在Atom中找不到任何'運行選項'或'解釋器配置'。我目前的翻譯是'/Library/Frameworks/Python.framework/Versions/2.7/bin/python'中的Python 2.7。我已經安裝了3.5這是在'/Library/Frameworks/Python.framework/Versions/3.5/bin/

    1熱度

    1回答

    我讀到python set x = set(["a","b","c","d"]) y = set(["c","d"]) print(x.intersection(y)) 我得到輸出作爲每次{'d', 'c'}或{'c', 'd'}。 雖然它是正確的,我只是好奇的set item 序列翻譯閱讀如何設置?

    0熱度

    1回答

    我有興趣實施我自己的語言翻譯。根據Sebesta的「程序設計語言概念」第10章,當編程語言允許這樣的嵌套函數時,新的ARI(活動記錄實例)充滿了靜態父代; f(){ int x; g() { int y = x+1; ..} // definition of g k(t) { // definition of k h(t) { t();..

    5熱度

    1回答

    我正在從頭開始編寫一個簡單的lisp解釋器。我有一個全局環境,在評估文件中的所有表單時,頂級變量都會被綁定。當文件中的所有表單都被評估過時,頂層env和其中的所有鍵值數據結構都被釋放。 當評估者遇到lambda表單時,它會創建一個包含3件東西的PROC對象:應用過程時要在本地框架中綁定的參數列表,該函數的主體以及指向環境它是在創建,例如: ​​3210 將產生什麼樣的內部: PROC- args:

    1熱度

    2回答

    我正在使用StateT-monad(與IO組合)和EitherT monad在Haskell中編寫一個小型解釋器。現在我想將整數函數應用於由interpArithmic函數解釋的值。但問題是,interparithmic本身也有EitherT InterpError (StateT Environment IO())簽名。我如何提取由interpArithmic函數解釋的值,在我的bAritHel