multimethod

    1熱度

    1回答

    我正在使用multimethods來解析命令行命令及其參數。 (defmulti run (fn [command args] command)) (defmethod run :default [& _] ...) ^{:args "[command]"} (defmethod run "help" [_ & [args]] "Display c

    1熱度

    1回答

    我有一個應用程序有很多大地圖和其他東西,打印時很笨拙的讀取,所以我爲它們做了一個自定義打印功能,並設置print-method來調用它,就像這樣: (defmethod print-method clojure.lang.PersistentArrayMap [v ^java.io.Writer w] (.write w (fstr1 v))) 裏面fstr1,我怎麼能叫普通的印刷方

    0熱度

    4回答

    我是否正確理解了在多數調度語言中(多數?某些?),每個方法都會在程序執行的某個時間點被添加到函數中。 那麼我可以得出結論:多派遣作爲一個功能強制功能是可變的嗎? 是否有多種調度語言,其中所有方法一起附加到(通用)函數(加載時?),以便不可能在不同時間點看到不同狀態下的函數?

    4熱度

    3回答

    我玩弄了一個字符串的位置界面。我知道How can I slice a string like Python does in Perl 6?,但我很好奇,如果我可以讓這件事情只爲咯咯笑。 我想出了這個例子。閱讀立場是好的,但我不知道如何設置了multi處理一個任務: multi postcircumfix:<[ ]> (Str:D $s, Int:D $n --> Str) { $s.s

    1熱度

    1回答

    我似乎很難理解下面的代碼是如何工作的。更確切地說,是如何定義的函數處理傳遞的參數定義的「遭遇」時 (defmulti encounter (fn [x y] [(:role x) (:role y)])) (defmethod encounter [:manager :boss] [x y] :promise-unrealistic-deadlines) (defmet

    5熱度

    1回答

    你能用例子來解釋retag參數如何影響multi-spec創建?我發現multi-spec文檔很難消化。

    -1熱度

    1回答

    我正在研究關於吸引力訪問Anylogic遊客決策的論文模型。我怎麼能給訪問者(代理人)不同的最長等待時間。因此,如果一個景點的排隊超過了這個等待時間,那麼訪問者將不會去其最受歡迎的景點,而是去其第二個最喜歡的景點。

    5熱度

    2回答

    我想編程一個遊戲,並且想爲多個實體使用組件模式。 在接口/類型/多繼承的語言中,沒有問題。 我想要一些實體可更新但不可呈現,有些應該是兩者。 哈斯克爾: class Updateable a where update :: Float -> a -> a class Renderable a where render :: a -> Picture class Inpu

    2熱度

    2回答

    假設我有一個Java方法返回某個父接口的對象。這個函數返回的對象的類沒有記錄,但是有豐富的,有文檔記錄的接口層次結構,它們都擴展了父接口。因此,例如: public class Person { public IMeal favoriteMeal() { ... } } public interface IBreakfast extends IMeal { ... } publi

    2熱度

    1回答

    我想在一個單獨的文件中定義multimethod及其實現。它是這樣的: 在文件1 (ns thing.a.b) (defn dispatch-fn [x] x) (defmulti foo dispatch-fn) 在文件2 (ns thing.a.b.c (:require [thing.a.b :refer [foo]]) (defmethod foo "hello" [s