This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2015-08-17
Channels
- # admin-announcements (63)
- # beginners (1)
- # boot (83)
- # cider (17)
- # clojure (33)
- # clojure-android (3)
- # clojure-france (3)
- # clojure-gamedev (1)
- # clojure-russia (20)
- # clojure-sg (9)
- # clojurescript (81)
- # core-async (77)
- # cursive (13)
- # datomic (30)
- # hoplon (7)
- # instaparse (54)
- # ldnclj (1)
- # off-topic (4)
- # om (2)
- # onyx (23)
- # re-frame (16)
- # reagent (3)
- # yada (2)
@aengelberg: made some progress this weekend with my instaparse project! https://github.com/adzerk-oss/zerkdown
<VEC-CHAR> = !(LSB | RSB | DQ) ANY-CHAR
looks like it would allow mismatched map delimiters inside it
then it would still allow mismatched quotes and delimiters because strings and maps don't successfully parse
i will parse one level of indentation, then for each :BLOCK
call insta again on the body
I imagine it will be most idiomatic to call insta/parse
again within the transformer. But my point is, if a parse failure arises (malformed zerkdown) within that, you will need to propagate that error properly
!STRING x
means no "complete well-formed strings" allowed, but you probably wanted "no double-quotes of any kind really"
anyway I don't think it's super hard to make the delimiters correct. (!(LSB | RSB | LCB | RCB | DQ) ANY-CHAR) | STRING | CLJ
but for making webapps it's really nice to have a "prose" syntax you can customize for your use case