meta
meta copied to clipboard
A DSL parsing library for human readable text documents
Sometimes you have several similar rules like this: ``` sum_in = [label {"sum" "∑"} in_body] sum_short = [label {"sum" "∑"} short_body] prod_in = [label {"prod" "∏"} in_body] prod_short = [label...
https://github.com/harc/ohm Very similar to Piston-Meta in some ways. I thought OMeta was using a better design than Piston-Meta, but Ohm claims to be improved version that moves in the direction...
Currently, when a rule call itself recursively, it leads to stack overflow.
An idea is to automatically generate a binary format from a meta language. The binary format could be used to load data efficiently. Discussed this on IRC and was pointed...
Currently, when a rule matches on a string, it allocates memory. In many formats the parent rule might fail and drop the allocated string. An idea to optimize this is...
Sometimes you want to match over a pattern of rules and use it as a string. Examples of usage: - Code generation (part of the syntax rules describe a pattern...
Currently an allocation is needed for each converting error. It might be desireable to use the errors for control logic, in which case we should get rid of the allocations.
Some formats store the hexadecimal byte representation of numbers to avoid loosing information. For example `0x3F800000` is `1.0`. The motivation for this is to support the full OpenGEX specification.
Just an idea to keep for later. In some formats you want to use as little memory as possible, so knowing the maximum look-ahead for each for split in the...
Some strings in text formats are using single quote strings `'foo'` instead of `"foo"`. The character `"` is allowed in single quote strings. In Javascript, `\'` is handled the same...