> If it ever makes sense to have more than one directive combined into one
> #!(...) form then we will need a syntax like this:
>
> #!((thing1 value1) (thing2 value2) (thing3 value3))
>
> Or something like this:
>
> #!(many-things (thing1 value1) (thing2 value2) (thing3 value3))
For reference, Clojure has the ^ (caret) read syntax to attach metadata
to objects like this:
General ^{:key1 val1 :key2 val2 ...}
Abbrevs ^Type → ^{:tag Type}
^:key → ^{:key true}
Common ^:dynamic ^:private ^:doc ^:const
Examples (defn ^:private ^String my-fn ...)
(def ^:dynamic *dyn-var* val)
{...} is Clojure's ordinary read syntax for a map (hash table).
<https://clojure.org/reference/reader#_metadata>
<https://clojure.org/api/cheatsheet> (search for "metadata" on page)