ocaml

    -3熱度

    2回答

    我想將函數met_devant_et_acc變成一個尾遞歸函數,但我不知道如何重寫它。 met_devant_et_acc l h應該返回一個列表,其中包含列表l的所有列表以及所有這些列表中的元素h作爲第一個元素。 例如:met_devant_et_acc [ [1;2] ; [3;4] ]是[ [9;1;2] ; [9;3;4] ; [1;2] ; [3;4] ] let rec met_dev

    0熱度

    1回答

    module Dfs = struct let rec dfslsts g paths final = let l = PrimePath.removeDuplicates (PrimePath.extendPaths g paths) in let f elem = if (List.mem "%d" (List.flatten fin

    1熱度

    1回答

    所以我們來簡單介紹一下。我正在學習OCaml,目前我正在學習一門課程,並且我正在努力讓我的智能感知工作適用於我在Linux上使用VS代碼的設置。爲此,我必須先建立我的檔案。問題是,當我嘗試構建我的文件「spellc.ml」時,出現錯誤,表明存在未綁定的值。 我有這樣的目錄結構: _build/ src/ ... src/ spellc.ml utiles.

    1熱度

    1回答

    所有: 我怎麼能寫在 「咖喱」 語法如下: let y = 2 in let f x = x + y in let f x = let y = 3 in f y in f 5 我在第一次嘗試這樣的事情: (y -> (f -> ((f x -> f 5) (y -> f y) 3)) x + y) 2 但是,這似乎並沒有正確評估。 更好的是,Lambda表達式可以看到綁定。 謝謝!

    1熱度

    1回答

    我從來不喜歡與定義的發揮,尤其是在面試。 據我所知: 編輯: 尾遞歸函數是它的遞歸調用後沒有做任何更多的計算功能。 我認爲第二個不是尾遞歸,因爲它根本沒有進行遞歸調用,所以不是尾遞歸。 但是第一個是,即使它使2遞歸調用尾遞歸,它不會做以後的東西,所以我想我在這裏正確使用我的尾巴recursivness的定義。 let rec func x = if x > 10 then x else

    1熱度

    1回答

    我稍微困惑,因爲編譯器告訴我,1, [5;2] 不是這兩種情況下一個元組: (1,[5;2])::[6,[5;1]; 2,[16;1]] 這不起作用 (爲什麼?) 1,[5;2]::[6,[5;1]; 2,[16;1]] 我問這個,因爲我需要解決我的問題: type node = int type edge = node * node type graph = (node * node lis

    1熱度

    2回答

    我只是試圖用re2來替換文件中的正則表達式,測試通過了一個簡單的字符串。 # module Re2 = Re2.Std.Re2;; # let re = Re2.create_exn "<key>Tags.*<\\/array>" ;; # let orig = "abc <key>Tags</key><array><string>OCaml</string></array> end";;

    0熱度

    1回答

    我按照說明使用MSYS2工具鏈編譯64位Unison,如HERE所述。 簡單地說,這裏的步驟: pacman -Sy --noconfirm base-devel git mingw-w64-x86_64-{glib2,gtk2,ocaml,toolchain} sed -i "s/#include <gdk\/win32\/gdkwin32keys.h>/\/\/#include <gdk\/

    1熱度

    3回答

    每當我運行代碼時,disting true和disting false也變成了expression1。結果反之亦然此代碼 let disting v = match v with | bool -> (*expression2*) | int -> (*expression1*) | _ -> (*expression3*) 這也有類似的問題。我怎樣才

    0熱度

    1回答

    let my_matrix1 = [[1;2];[3;4]];; let my_matrix2 = [[4;7;8];[3;2;1]];; 我已經定義了兩個矩陣,所以我可以看到代碼是否正常工作。 我已經做了的元素: let rec does_it_contain lis x = if (lis = []) then false else if ((List.hd lis) = x) t