malli

https://github.com/metosin/malli :malli:
borkdude 2021-03-27T10:29:35.238600Z

I think I'll land on:

{:tasks {:clean [:shell {:description "foo"} "rm -rf target"]}}

borkdude 2021-03-27T10:29:45.238900Z

thanks :duckie: :)

1
Panel 3000 2021-03-27T11:36:01.240300Z

Just curious if you are using Malli to make the DSL ?

borkdude 2021-03-27T11:37:19.240500Z

not really no

borkdude 2021-03-27T11:42:08.240800Z

although malli would probably be a good fit for validation

borkdude 2021-03-27T13:34:46.241100Z

Landed on this one:

{:tasks {:clean {:description "Foo" :task [:shell "rm -rf target"]}}}

borkdude 2021-03-27T13:35:05.241500Z

Not hiccup as usual, but I think the cleanest so far

ikitommi 2021-03-27T14:17:08.241600Z

@borkdude looks good, I would have suggested a map too, keeps the concepts separated.

ikitommi 2021-03-27T14:18:32.241700Z

Malli also has the generic map-syntax and have explored a third, simpler (clj-fx-like) map-syntax.

ikitommi 2021-03-27T14:23:03.241800Z

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.

borkdude 2021-03-27T14:56:53.242200Z

@ikitommi what is clj-fx-like map syntax? would love to see it