mirror of
https://github.com/idris-lang/Idris2.git
synced 2024-12-14 22:02:07 +03:00
c3e5689a62
If all branches in a case block are a lambda, lift the lambda out. In many cases, this can save creating a closure then evaluating it immediately, because the function is already applied to the extra argument. This happens in particular with IO based code, where the extra argument is the world token. One place where this transformation has a big effect is 'evalRef' so the evaluator is now a bit faster (about 20% on the small benchmark I tried it on - but no guarantees that's going to happen on other examples!) |
||
---|---|---|
.. | ||
base | ||
chez | ||
codegen | ||
contrib/json_001 | ||
gambit/bitops001 | ||
ideMode | ||
idris2 | ||
node | ||
prelude/reg001 | ||
racket | ||
refc | ||
templates | ||
ttimp | ||
typedd-book | ||
Main.idr | ||
Makefile | ||
README.md | ||
tests.ipkg |
Tests
Note: The commands listed in this section should be run from the repository's root folder.
Run all tests: make test
To run only a subset of the tests use: make test only=NAME
. NAME
is matched against the path to each test case.
Examples:
make test only=chez
will run all Chez Scheme tests.make test only=ttimp/basic
will run all basic tests forTTImp
.make test only=idris2/basic001
will run a specific test.
Templates for common test instances can be found in the templates
folder.