lightyear
lightyear copied to clipboard
Parser combinators for Idris
This commit adds support for the [elba package manager](https://github.com/elba/elba). If/when #57 is merged, the test targets can be reduced down to just one, which uses `tests/SpecSuite.specSuite`.
This pull request enables this project to be built with bazel using [rules_idris]() and the [smoke hill package set](https://github.com/shmish111/smoke-hill). More information about smoke hill can be found in [the readme](https://github.com/shmish111/smoke-hill)...
Hi, I'm trying to translate the last megaparsec example on this page. http://akashagrawal.me/beginners-guide-to-megaparsec/ I ended up with this, which typechecks. ```{.idris} boldP : Parser (List Char) boldP = do _...
Right now `ntimes` (https://github.com/ziman/lightyear/blob/master/Lightyear/Combinators.idr#L50) is not tail recursive, so it causes a stack overflow with large input. Can this be made tail-recursive to avoid the problem? Other combinators could also...
## Steps to reproduce ```idris import Control.Monad.State import Lightyear import Lightyear.Char import Lightyear.Combinators import Lightyear.Strings -- hide the one from Lightyear.Strings %hide Parser Parser : Type -> Type Parser =...
I applied [Specdris](https://github.com/pheymann/specdris) to rewrite your unit tests: #### Advantages - nice dsl to create the tests and get formatted output - exit code depends on test result; if some...
Is there any documentation available for this library?
$ git clone [email protected]:ziman/lightyear.git Cloning into 'lightyear'... remote: Counting objects: 611, done. remote: Total 611 (delta 0), reused 0 (delta 0), pack-reused 611 Receiving objects: 100% (611/611), 108.43 KiB |...
Currently Lightyear.Strings.space parses zero or more whitespace, which seems strange given it singular naming. Moreover, this is in contrast to Parsec which defines: space and spaces to separate these two...