sml

    2熱度

    1回答

    type VAR = identifier type code = instruction list type environment = identifier list type EXPR = environment -> code * environment fun ADD_OP expr expr' env = DUMMY fun SUB_

    -1熱度

    1回答

    我對ML毫無經驗,而且我無法理解這一點。 開始問題 多態性排序 列表上執行插入排序此函數採用作爲參數的比較功能較少和元素的列表升進行排序。該代碼編譯並運行正常: fun sort(less, nil) = nil | sort(less, a : : l) = let fun insert(a, nil) = a : : nil | insert(a, b :

    1熱度

    1回答

    這是我的任務。 (http://prnt.sc/aa3gwd) 我一直工作在這其中一個導師,這是我們想出了這麼遠。這 fun mult(a,b) = let val product = 0 in if (a = 0) then 0 else while a > 0 do ( product := product +

    2熱度

    1回答

    我有這樣的代碼片段 fun decrement_to_zero r = if !r < 0 then r := 0 else while !r >= 0 do r := !r - 1 從本教程 https://learnxinyminutes.com/docs/standard-ml/ 但我得到這個錯誤: stdIn:1.2-33.9 Error:

    3熱度

    1回答

    我想在SML中實現一個重複的平方算法。我希望它是尾遞歸。 目標是乘以所有x^k,其中k是2^m,2^m是n的二進制表示中的1。 例如,對於x^25,地計算x^1 * X^8 * X^16因爲16 + 8 + 1 = 25 我不知道如何表示一個數字由它的二進制部分,或使用按位操作來手動檢查(因爲從我可以告訴SML沒有按位操作)。 我更喜歡使用開箱即用的SML庫,因此不需要導入其他庫。 這是一個家庭作

    0熱度

    1回答

    我有問題理解SML的語法嵌套let s和if s。例如,爲什麼這種語法形式不正確? fun stuff a = let val p = 2 in if a = 1 then let val r = p in a = r end else 0 en

    0熱度

    1回答

    這種語言的語法很混亂。 fun bar a = print (Int.toString a); 0 編譯。不知道爲什麼emacs縮進0。 fun bar a = print (Int.toString a) 0 引發錯誤。 Error: operator is not a function [tycon mismatch] operator

    -1熱度

    1回答

    我在Mac上遇到了SML/NJ問題。我下載了正確的原始pgk文件。 SML/NJ安裝在正確的道路上:/usr/local/smlnj/bin/sml但是當我嘗試運行sml(命令:SML)出現以下消息: -bash: sml: command not found. 我覺得現在的問題是,我有OSX 10.11.3在我的Mac 。

    2熱度

    3回答

    我想在sml中創建堆棧,我嘗試過使用列表;但我無法將元素添加到列表中。我試圖從輸入文件讀取行,說如果行說: push 5 push 9 add quit 然後我想輸出文件是: 14 因爲5 + 9是14 到目前爲止,我能夠創建布爾函數來識別行是推還是數字。 fun is_digit (c) = #"0" <= c andalso c <= #"9"; fun is_Push (c)

    3熱度

    1回答

    在試圖爲SML中的簡單語言創建解釋器時,我努力將字符串轉換爲整數。例如, val someString = " 1.9" Int.fromString someString 回報: val it SOME 1 : int option 而且,當我嘗試用從中提取的選項類型的值: valOf(Int.fromString someString); 返回: val it = 1 : int