Ich habe einige Zeit damit verbracht, mit Clojure-CLR zu spielen. Meine REPL funktioniert, ich kann .NET-Klassen von Clojure aufrufen, aber ich konnte keine kompilierten Clojure-DLLs aus C# -Klassen aufrufen.Aufruf von Clojure von .NET
Ich habe versucht, das Java-Beispiel anzupassen gefunden here:
Ich entfernte die: Name Zeile von oben aus dem Beispiel, weil sie einen „Duplicate Schlüssel: Name“ verursachen Fehler. Ohne die Zeile ": name" wird der Code korrekt kompiliert und ich kann den Verweis in Visual Studio hinzufügen, aber ich kann nicht herausfinden, wie der Code verwendet wird. Ich habe eine Vielzahl von 'using'-Anweisungen ausprobiert, aber bisher hat noch nichts funktioniert. Kann jemand dazu einen kleinen Einblick geben? Hier ist der Clojure-Code, den ich versuche zu verwenden.
(ns code.clojure.example.hello
(:gen-class
:methods [#^{:static true} [output [int int] int]]))
(defn output [a b]
(+ a b))
(defn -output
[a b]
(output a b))
+1. Ich mag diesen Ansatz und stimme Ihrer Argumentation zu. Auch etwas fühlt sich falsch an, wenn man mit einer EXE verlinkt. – harpo