Elixir lexer for the Makeup syntax highlighter.


License
BSD-3-Clause

Documentation

MakeupElixir

TODO: Add description

Installation

If available in Hex, the package can be installed by adding makeup_elixir to your list of dependencies in mix.exs:

def deps do
  [
    {:makeup_elixir, "~> x.y.z"}
  ]
end

Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/makeup_elixir.

Benchmarks

Schism: "inline vs no inline"

Should we inline parsec or not? Currently this can be done using a config option. By default, parsers are not inlined because inlining doubles compilation time.

Schism: "map lookup vs pattern matching"

Postprocessing the token lists using map lookup VS pattern matching

Schism: "parse delimiter pairs"

This lexer used to use a very expensive operation to match some delimiters, which seemed to have supralinear complexity. Now, only a couple delimiters are parsed like this.