I think I'll land on:
{:tasks {:clean [:shell {:description "foo"} "rm -rf target"]}}
thanks :duckie: :)
Just curious if you are using Malli to make the DSL ?
not really no
although malli would probably be a good fit for validation
Landed on this one:
{:tasks {:clean {:description "Foo" :task [:shell "rm -rf target"]}}}
Not hiccup as usual, but I think the cleanest so far
@borkdude looks good, I would have suggested a map too, keeps the concepts separated.
Malli also has the generic map-syntax and have explored a third, simpler (clj-fx-like) map-syntax.
Need to pick a "better" map-syntax for malli 1.0.0, but will be first-class support, in malli.core
. One can't mix syntaxes (terse/hiccup and map) freely, just one allowed per AST fragment.
@ikitommi what is clj-fx-like map syntax? would love to see it