sci
sci copied to clipboard
Configurable Clojure/Script interpreter suitable for scripting and Clojure DSLs
Example: ``` cljs.user> (def o #js {:a (fn [] (this-as this this))}) #'cljs.user/o cljs.user> (.a o) #js {:a #object[a]} ```
CLJS has macro fns. This means that on call position calls can be handled by macros but in other usages they fall back to the function implementation. We can implement...
Also see https://github.com/borkdude/sci/commit/e3716c9efcf43845841d2b9b65ac4d8526cf9443
We should really be using locking or something around the require logic, since multiple evaluations can happen in parallel on the same context. See https://github.com/clj-kondo/clj-kondo/commit/0b2adc37278649a351836d1482a86840985a7fad
We can maybe apply the same strategy as #541 for defrecord. /cc @GreshamDanielStephens
JSON: https://github.com/XeroAPI/Xero-OpenAPI/blob/master/xero_accounting.yaml deps.edn coordinates: ``` org.clojure/data.json {:git/url "https://github.com/babashka/data.json.git" :sha "7d4ae6a2923965bf2e83962f5268f69eaa4a9a57"} ``` ``` $ ls -lah xero_accounting.json -rw-r--r-- 1 onetom staff 625K Jul 10 22:23 xero_accounting.json $ time ~/Downloads/bb -e '(time...
See candid82/joker#455
Add :direct-linking option or allow this programmatically from within a sci program.
I think the idea that @ikitommi has: The namespaces.cljc file contains top-level datastructures with all the core namespaces in it. Those should be lifted into a function and then users...