dak
dak copied to clipboard
Dak is a Lisp like language that transpiles to JavaScript.
https://github.com/anko/eslisp/blob/master/doc/comparison-to-other-js-lisps.markdown https://github.com/santoshrajan/lispyscript https://github.com/wisp-lang/wisp https://github.com/jbr/sibilant https://github.com/Mitranim/jisp
Support `#[]` style literals with hiccup syntax. It should be possible to choose what happens with this syntax. Support for React.
https://sourcemaps.info/spec.html https://sokra.github.io/source-map-visualization/#coffee
Should be able to do this without needing the let: ``` (fn log-err [prefix err] (let [child (document.createElement :pre)] (set child.innerText (str prefix ": " (?? err.message err))) (output.appendChild child)))...
In order for macros to reference symbols from other modules, support the same or similar syntax as `(import)` but transpile it to something like: ```javascript export const other = await...
https://clojuredocs.org/clojure.core/first https://clojuredocs.org/clojure.core/last https://clojuredocs.org/clojure.core/pos_q https://clojuredocs.org/clojure.core/neg_q https://clojuredocs.org/clojure.core/zero_q https://clojuredocs.org/clojure.core/-%3E https://clojuredocs.org/clojure.core/-%3E%3E https://clojuredocs.org/clojure.core/_.. https://clojuredocs.org/clojure.core/as-%3E https://clojuredocs.org/clojure.core/apply https://clojuredocs.org/clojure.core/boolean_q https://clojuredocs.org/clojure.core/char_q https://clojuredocs.org/clojure.core/cond-%3E https://clojuredocs.org/clojure.core/cond-%3E%3E https://clojuredocs.org/clojure.core/constantly https://clojuredocs.org/clojure.core/declare https://clojuredocs.org/clojure.core/false_q https://clojuredocs.org/clojure.core/if-not https://clojuredocs.org/clojure.core/if-some https://clojuredocs.org/clojure.core/instance_q https://clojuredocs.org/clojure.core/macroexpand https://clojuredocs.org/clojure.core/macroexpand-1 https://clojuredocs.org/clojure.core/not= https://clojuredocs.org/clojure.core/not https://clojuredocs.org/clojure.core/nil_q https://clojuredocs.org/clojure.core/num https://clojuredocs.org/clojure.core/odd_q https://clojuredocs.org/clojure.core/some-%3E https://clojuredocs.org/clojure.core/some-%3E%3E https://clojuredocs.org/clojure.core/some_q...
Support mixed pattern matching with destructuring. https://fennel-lang.org/reference#match-pattern-matching
Provided a hosted service that shares the logic with the LSP server to provide beautiful documentation.
A second hiccup macro implementation should exist. `lit-html` may be a different enough system to try this with.