Parcera Versions Save

Grammar-based Clojure(script) parser

v0.11.6

3 years ago

FIXED 🐞

  • #96 big decimal numbers can have leading zeros
  • #97 tag can have any form as content
  • only allow a single / inside keywords and symbols as described in Clojure Reader documentation

v0.11.5

3 years ago

FIXED 🐞

  • #85 radix numbers cannot be read as BigInt N
  • match all Unicode whitespace not just latin1 charset
  • dont allow octal chars greater than 377
  • fail on invalid input instead of trying to parse it as two valid tokens together

v0.11.4

3 years ago

ADDED ➕

  • #78 support for octal literals

FIXED 🐞

  • #86 a symbol cannot start with a number
  • #89 eval can have a reader conditional as input

v0.11.3

3 years ago

FIXED 🐞

  • #79 and #80 - adds more macros to the set of supported metadata entry and metadata values

v0.11.2

3 years ago

FIXED 🐞

  • #74: allow comment and discard between the macro character (like `, ~, #' , etc) and the macro form

v0.11.1

4 years ago

FIXED 🐞

  • unquote and unquote splicing can also be used as metadata target

v0.11.0

4 years ago

Javascript support is back 🚀

This required some unfortunate changes (see below)

BREAKING 💀

  • :function rule renamed to :fn to avoid collisions on generated code with JavaScript function reserved keyword.
  • :simple_keyword renamed to :keyword for consistency with :symbol

v0.10.2

4 years ago

FIXED 🐞

  • allow metadata on set, namespaced_map and functions
  • allow symbolic names as symbols (i.e. Inf is a valid symbol on its own)

v0.10.0

4 years ago

BREAKING 💀

  • :simple_keyword now includes : as part of the match
  • :macro_keyword now includes :: as part of the match
  • :function now contains a single :list child
  • :conditional now allows a :whitespace and contains a single :list child
  • :conditional_splicing now allows a :whitespace and contains a single :list child

REMOVED ➖

  • custom validation on ast rules. Extra validation is now expected to happen on the consumer of the ast

ADDED ➕

  • support for "invalid" keywords like :http://www.department0.university0.edu/GraduateCourse52 since Clojure also accept those
  • support for keywords that start with reserved character # like :#hello since Clojure also accept those

v0.9.2

4 years ago

FIXED 🐞

  • consume input until eof