Commit Graph

1900 Commits

Author SHA1 Message Date
G. Allais
b7bdd0a99f
Various improvements (#1286) 2021-04-09 13:02:37 +01:00
Niklas Larsson
9ffc346ebb
Use file extensions when looking for exes on windows (#1268)
Co-authored-by: G. Allais <guillaume.allais@ens-lyon.org>
2021-04-08 21:11:34 +01:00
Ruslan Feizerakhmanov
0cef4e3743 Introduce aliases L0 & L1 as specialised versions of L 2021-04-08 21:11:03 +01:00
Ruslan Feizerakhmanov
8d806552b0 Add explicit names in place of underscores 2021-04-08 21:11:03 +01:00
Ruslan Feizerakhmanov
2548f11d52 Make the SM more explicit 2021-04-08 21:11:03 +01:00
Ruslan Feizerakhmanov
1a7dc83ccb Fix a linearity leak in network; expose error codes to the user 2021-04-08 21:11:03 +01:00
Stefan Höck
61c43e5337
[ new ] Add Bifoldable and Bitraversable interfaces to Prelude (#1265) 2021-04-08 17:25:37 +01:00
John Mager
c4efa0d29f Ignore some REPL options in package commands 2021-04-07 20:45:18 +01:00
Guillaume ALLAIS
23b67d18ab [ lint ] remove trailing whitespace 2021-04-07 16:33:59 +01:00
Georgi Lyubenov
0bbc3cf42b Update section on custom code gens in updates.rst
It is now possible to write your own code generation.
2021-04-07 16:28:46 +01:00
Andor Penzes
b0d6793cfb
[ doc ] Custom backend cookbook (#1237)
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-04-07 16:24:39 +01:00
Denis Buzdalov
533af9dac6 Update readme badges to point to the currently relevant workflows. 2021-04-07 14:46:09 +01:00
Denis Buzdalov
d77c4f1fdf
Ignore the root lib dir (#1278) 2021-04-07 13:55:04 +01:00
Ohad Kammar
b65907f770
Support Multi-declarations (#1280) 2021-04-07 12:21:17 +01:00
Kamiλ Shakirov
2ac4bea220
[ install ] Check if 'realpath' exists for Chez and Racket backends (#1210) 2021-04-06 15:42:04 +01:00
Mathew Polzin
178f26ec17
[ re #1162 ] Test without install (#1240)
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-04-05 11:27:56 +01:00
Edwin Brady
7714bdf3fd
Merge pull request #1275 from edwinb/fix1274
Use correct multiplicity in scope of lets
2021-04-04 19:17:36 +01:00
Edwin Brady
12f40f538f Use correct multiplicity in scope of lets
The scope should be checked at the same multiplicity as the enclosing
expression.
2021-04-04 18:10:34 +01:00
Edwin Brady
add3e08512
Merge pull request #1273 from edwinb/nfthreshold
Add heuristic for when to normalise metavars
2021-04-04 17:09:38 +01:00
Edwin Brady
922074b0aa Add heuristic for when to normalise metavars
If they're big, they take a long time to instantiate, and if they
consist of a lot of functions, chances are that normalising them will
make them much smaller. This significantly improves type checking
performance for some programs with lots of type level computation going
on.

The threshold is set with %nf_metavar_threshold, but the default value
of 50 is probably fine. Set it to 0 to always normalise metavar
solutions, or something higher than 1000 to essentially never do it.
It's roughly a count of nodes in the typechecked syntax tree under the
first function application.
2021-04-04 15:56:15 +01:00
Niklas Larsson
084997a880 Replace prim__getArgs with prim__getArgsCount and prim__getArg
This spares us from having to build Idris data structures in the foreign
code.
2021-04-03 10:45:02 +02:00
Niklas Larsson
2ba7230b19
Merge pull request #1267 from melted/refc_idris_build
Fix escaping in C backend
2021-04-03 10:38:33 +02:00
Niklas Larsson
0314ff66ef Fix escaping in C backend
Use unicode escapes. Insert trailing doublequotes to terminate
(otherwise hexchars will be considered part of escape)
2021-04-02 22:35:17 +02:00
Niklas Larsson
b2f08c0e81
Merge pull request #1264 from melted/refc_idris_build
Fixes from trying to compile idris with the refc backend
2021-04-02 17:04:50 +02:00
Niklas Larsson
e49916cea9 Fixes from trying to compile idris with the refc backend
* fix doublequoting in constArray
* substitute tildes in names
* Add negate functions
* Add string comparisons

Several things remain, notably missing _argList functions.
2021-04-02 15:02:40 +02:00
Kamil Shakirov
b27001136b [ tests ] Ignore test artifacts 2021-04-01 10:06:14 +01:00
Guillaume ALLAIS
99b87c8156 [ fix #1248 ] Bring qualified names back for data & record types 2021-03-31 23:17:53 +01:00
Atomotron
a1e7221c32
[ fix #1200 ] Switch scheme backend to flonum functions (#1203)
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-03-31 23:17:41 +01:00
Kamil Shakirov
43d0b94567 [ docs ] Update Control.App docs 2021-03-31 18:01:39 +01:00
Guillaume ALLAIS
5af1efb56e [ refactor ] introduce NonZero
This has a much better behaviour with respect to proof search and
the coverage checker realising we don't need to consider the Z case
than the `Not (x = Z)` we used earlier.
2021-03-31 17:59:58 +01:00
Guillaume ALLAIS
09d8e25441 [ refactor ] more efficient implementation of range 2021-03-30 10:51:56 +01:00
Zoe Stafford
f255026d1b
[ fix #1220 ] Update arity of constuctors to reflect erased args (#1225) 2021-03-29 15:08:06 +01:00
Ruslan Feizerakhmanov
802113772f Tune precedence of (===), (~=~) and (<+>) 2021-03-29 11:29:58 +01:00
G. Allais
238eb62da6
[ fix #1230 ] Better error messages for out-of-scope identifiers (#1233) 2021-03-29 10:45:48 +01:00
CodingCellist
ec77ad21ab
[ re #1185 ] Add primitive for obtaining number of processors (#1209)
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-03-26 18:27:25 +00:00
Ben Hormann
b1c7f75bbe [ fix ] bootstrap-stage2: IDRIS2_CG not set correctly 2021-03-26 15:45:06 +00:00
stefan-hoeck
6824111fd8 [ performance ] add fastUnlines to base 2021-03-26 12:35:29 +00:00
Zoe Stafford
028f82f70c
Add Data.Monoid.Exponentiation to contrib.ipkg (#1232) 2021-03-26 12:35:19 +00:00
Denis Buzdalov
a6a82a18b5 [ prelude ] foldlM was made to be in the Foldable interface. 2021-03-26 00:59:13 +03:00
Denis Buzdalov
9ee0063a7f [ contrib ] Some useful functions were added for lazy lists. 2021-03-26 00:59:13 +03:00
Alex Gryzlov
71abc8e33b
Add Path@contrib & small changes (#1229) 2021-03-25 16:01:32 +00:00
Guillaume ALLAIS
2df49ebdd4 [ fix #1224 ] moduleIdent must be capitalised 2021-03-25 15:59:46 +00:00
Guillaume ALLAIS
00929deed6 [ cosmetic ] nicer error messages for uncaught exceptions 2021-03-25 15:59:46 +00:00
Guillaume ALLAIS
dad1954a39 [ debug ] for read attempts 2021-03-25 15:59:46 +00:00
Denis Buzdalov
8abd60535b [ fix ] Ability for data types to be operators was restored 2021-03-25 14:16:47 +00:00
G. Allais
97fb5d7b94
[ fix #893 ] proof gadget for with clauses (#1222) 2021-03-25 10:02:06 +00:00
G. Allais
21f2913527
[ fix #710 ] Enforce assumptions about capitalised idents (#1207)
Given we keep getting tripped up by this, here we go:

* Namespaces
* Data names
* Record names
* Data constructor names (except for operators)
* Record constructor names (except for operators)
* Interface constructor names (except for operators)
2021-03-22 13:22:52 +00:00
Guilherme Silva
4e3f652c6f
[ fix #1212 ] Removed apps from nix flakes (#1213) 2021-03-22 11:25:38 +00:00
Denis Buzdalov
0749165245 [ base ] Properties of indexing after replaceAt were added for Vect 2021-03-18 16:07:48 +00:00
Denis Buzdalov
941e3963fa [ base ] DecEq implementations of Fin and Vect were exported publicly 2021-03-18 16:07:21 +00:00