ml

    0熱度

    1回答

    我想在資源使用期間發生任何異常時釋放資源。 在C++中,這個任務很簡單:我將發佈放入析構函數中,無論發生什麼,它都會自動調用。在Java中,使用'finally'子句。標準ML中的這個相同任務的做法是什麼? 我試圖抓住具有可變模式「e」和所有的異常重新提出來: datatype FileReadResult = FileReadOkay of string | FileReadError fu

    5熱度

    4回答

    大家可以向我解釋這段代碼嗎? let safe_division n = function | 0 -> failwith "divide by 0" | m -> n/m 當我EXCUTE safeDiv 3 0,什麼是在這種情況下m和n? 在一般情況下,函數何時與第一和第二模式匹配?

    2熱度

    2回答

    我得到了OCaml中append功能的實現,但它似乎混淆我 let rec append = function | [] -> fun y -> y | h :: t -> fun y -> h :: (append t y) 什麼是在這種情況下,fun y的目的是什麼?

    4熱度

    1回答

    是否可以使用Poly/ML建立共享庫? 我希望能夠爲Poly/ML庫創建一個C API,並從不同的編程語言(例如Python)調用/加載它。有人試圖這樣做嗎? 我知道這OCaml中來完成: How can I call OCaml functions from a Python program?

    2熱度

    1回答

    我需要從SML文件中讀取字符。我有這段代碼讀取整數: fun readInt input = Option.valOf (TextIO.scanStream (Int.scan StringCvt.DEC) input) 是否有某些字符的等價物?我已經看到有Char.scan,但我不確定如何使用它。 Thanx提前!

    1熱度

    2回答

    我在我的SML手冊中看到了以下函數,該函數計算特定更改需要特定類型的硬幣數量。 例如change [5,2] 16 =[5,5,2,2,2]因爲2 5硬幣和3-2金幣一個得到16 下面的代碼是一個回溯的方法: exception Change; fun change _ 0 = nil| change nil _ = raise Change| change (coin::c

    1熱度

    1回答

    我想要得到一個表達式並將其轉換爲標準形式。爲了更好地闡明我的目的,假設你定義一個通用樣式你的表情是這樣的: Σ(A * B)//產品 現在總和,如果你給出的輸入這是不是在格式如:(a + b)*(c + d),你需要先對它進行標準化(其實它只是一個簡單的例子而不是我的例子) 現在我有一個已經寫在ML中的代碼,它的也是長。在這裏你可以看到一些snipets: rew(p_choice(x,p_nil

    5熱度

    3回答

    我發現polyml是ML的實現,可以很容易地安裝在Ubuntu (在存儲庫中命名爲polyml,並且可以使用poly執行)。我正在關注Andrew Cumming的A Gentle Introduction to ML。 polyml解釋器經過幾分鐘的實驗後,我發現它不支持readline (按向上箭頭鍵產生一個^[[A)。 這對解釋者來說似乎並不正常。這應該只會發生,如果我沒有安裝readlin

    2熱度

    1回答

    以上帝的名義 我有一個colset colset process_list = list process;其中進程表示此聲明:colset process = product ratio*ID*wait_time*e_runtime;,此colset中所有使用的colset都是INT類型。 現在的問題是,我找不到排序此列表的方法。有誰能夠幫助我?我會感激的。

    1熱度

    1回答

    我是ML新手,我有一個字符數組!我試圖找到一個數組函數,以便給函數char#「T」並返回該數組中該元素的位置。一個提示可能是非常有用的,因爲我嘗試了查找功能,它不能這樣工作!