flowmetal/components/milkshake/README.md

1,011 B

Milkshake

A milkshake

A tool for slurping S-expressions. They are quite tasty.

Grammar

Milkshake supports a slightly expanded and idiosyncratic set of S-expression datums. Milkshake owes much to but is not quite Clojure's EDN.


;; A comment. Any number of semicolons will do.

()       ; A list
'()      ; A quoted list
[]       ; Another kind of list
#[]      ; A vector (maybe just a list)
{'foo 1} ; A mapping
#{1 2 3} ; A set

nil      ; A symbol
/        ; Another symbol
~        ; An unusual symbol
#        ; Another unusual symbol

/^\s+/   ; A regex pattern

"foo"    ; A string

1        ; A number
1e3      ; Another number
+3.1415  ; Another form of a floating number
1,000.00 ; A US-format number
1.000,00 ; A more common number format
1_000.00 ; A compromise form for a number

`()      ; A quasiquoted expression
`~()     ; An unqoted expression
`~@()    ; A spliced expression