Idris2/tests
Edwin Brady c3e5689a62 Add case+lambda transformation
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!)
2021-04-29 13:44:13 +01:00
..
base Flush standard out after writing prompt to it 2021-04-09 15:17:00 +01:00
chez Windows test fixes 2021-04-12 18:47:57 +02:00
codegen Add case+lambda transformation 2021-04-29 13:44:13 +01:00
contrib/json_001 [ fix ] broken unicode parsing in JSON 2021-04-22 10:59:14 +01:00
gambit/bitops001 Add Data.Bits to base (#1033) 2021-03-04 20:59:56 +00:00
ideMode Identify prefix and postfix record projections (#1183) 2021-03-15 13:40:13 +00:00
idris2 [ fix #1328 ] print infix functions enclosed in grave accents (#1331) 2021-04-25 18:56:08 +01:00
node Flush standard out after writing prompt to it 2021-04-09 15:17:00 +01:00
prelude/reg001 Restore Bool operators precedence 2020-07-18 05:49:35 -07:00
racket Patch CVs and sleep in Racket (#1059) 2021-03-15 13:43:12 +00:00
refc [ new ] support record projections in refc backend (#1054) 2021-02-15 10:35:46 +00:00
templates fixed whitespace for *.idr,*.ipkg,*.tex,*.yaff, and *.lidr 2021-01-22 15:08:49 +00:00
ttimp Correct multiplicities when checking Pi binders 2021-03-09 17:23:05 +00:00
typedd-book Add Data.Bits to base (#1033) 2021-03-04 20:59:56 +00:00
Main.idr [ fix #1328 ] print infix functions enclosed in grave accents (#1331) 2021-04-25 18:56:08 +01:00
Makefile [ install ] Check if 'realpath' exists for Chez and Racket backends (#1210) 2021-04-06 15:42:04 +01:00
README.md Test templates (#585) 2020-11-27 15:40:02 +00:00
tests.ipkg Set PREFIX for tests 2021-04-19 11:23:58 +01:00

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 for TTImp.
  • make test only=idris2/basic001 will run a specific test.

Templates for common test instances can be found in the templates folder.