You can use it to test ABNF in documents like the

Eustathius can be

You are free to use it, accoding to the

Here is a sample grammar (you can find many others, typically
extracted from the ```
program = expr
expr = spaces "(" spaces *(expr / term ) spaces ")" spaces
term = 1*ALPHA
spaces = *WSP
```

And here is the result of parsing with
```
% ./abnf-parse tests/minilisp.abnf
program : expr
expr : Seq[spaces ( spaces 0*10Choice[expr term] spaces ) spaces]
term : 1*10ALPHA
spaces : 0*10WSP
...
All the rules:
expr: (UNsafe)
term: (Safe)
...
```

(Safe are the rules for which there is at least a terminal in
the next N steps.)

After that, you can use Eustathius to generate sample programs, for
instance to give them to your parser:
```
% ./abnf-generate -s program tests/minilisp.abnf
( ( eWbejp ( )( kwMRMhvamEcGMLTDWGhTlooAXHQmzmwYiqEMn
) erDZ)LXfhB ()ZtkatUFlSZ (yrKg (daaLeuAxXFGZq)
) (ObMi(y ) CoqZBW(qET ) ) )
```

Remember that the ```
% ./abnf-generate -s date tests/date.abnf
2679-73-08
```

Similar or useful programs:

Thanks to Kim-Minh Kaplan for his help and the discussions.