Commit Graph

3291 Commits

Author SHA1 Message Date
Steve Dunham
a75161cb20 [ parser ] Improve error message for missing comma or period in forall. 2023-04-07 08:42:42 +01:00
G. Allais
b185f1ff85
[ new ] %unsafe pragma for escape hatches (#2937) 2023-04-03 21:42:47 +01:00
Thomas E. Hansen
87ebe7d932 [ contrib ] Add modFin and strengthenMod 2023-03-31 14:18:27 +02:00
Adowrath
6b38592b5a Add HasNamespaces Lifted* implementations 2023-03-29 09:00:06 +01:00
Denis Buzdalov
cf63ee2ef2 [ base ] Add extraction functions to Data.Singleton 2023-03-28 11:29:09 +01:00
Robert Walter
8120988a60
[ doc ] extend tutorial (#2897) 2023-03-28 10:27:23 +01:00
Robert Wright
fb956802ab Add Elem get and lookup functions 2023-03-23 19:36:20 +00:00
Bertalan Kis
c64c6a43aa make cond's default argument lazy 2023-03-15 10:15:50 +00:00
Zoe Stafford
442c5b529f
Collect constructors on the left hand side of case alternatives (#2919)
* [ fix ] collect constructors on LHS of cases alts

* [ tests ] Updated expected
These functions do refer to these constructors at runtime, so this is the correct output

* Update CHANGELOG.md

* [test] update test output again
2023-03-14 15:05:19 +00:00
Zoe Stafford
79116320dd
Merge pull request #2914 from dunhamsteve/enableRawMode
[ base ] Support unbuffered reading of stdin
2023-03-08 12:31:23 +00:00
Steve Dunham
081938bad8 [ base ] Add support for unbuffered stdin 2023-03-07 13:28:25 -08:00
Zoe Stafford
48531f73dd Fix typo 2023-03-07 09:07:12 -08:00
G. Allais
b5197d5c5d
[ fix ] partial evaluation implementation (#2899) 2023-03-07 08:31:29 +00:00
Denis Buzdalov
b03ce53e97 [ refactor ] Treat other out-of-order computations during logging 2023-03-06 12:56:39 +00:00
Denis Buzdalov
b5fe607f4e [ regression ] Do toFullNames only when logging happens 2023-03-06 12:56:39 +00:00
Zoe Stafford
2f47ce032a
Merge pull request #2912 from Z-snails/fix-typo
Fix typo
2023-03-05 13:00:27 +00:00
Zoe Stafford
1593e9f7da
Merge pull request #2911 from Z-snails/fixity-fix
Remove unused fixity definition
2023-03-05 13:00:05 +00:00
Zoe Stafford
c05971482f
Update Changelog 2023-03-05 11:14:21 +00:00
Zoe Stafford
5e3b9634fe
Fix typo 2023-03-05 11:06:05 +00:00
Zoe Stafford
dcb66a8757
Remove unused fixity declaration
This conflicts with a used one in `Data.String.Parser`
2023-03-05 10:18:20 +00:00
CodingCellist
7972c6acbd
[ new ] Implement bit-rotation operators (#2903)
* [ new ] Implement bit-rotation operators

Whereas `shiftR` and `shiftL` throw bits off the edge, the `rotR` and
`rotL` operations wrap the bits around to the start of the bit-stream.

* [ test ] visualise bit patterns instead

* [ fix ] print bit patterns the right way around

---------

Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
2023-03-04 14:41:54 +00:00
André Videla
24a69089bc
Merge pull request #2900 from mjustus/fix2895
[ fix #2895 ] don't erase argument when type is erased
2023-03-04 09:34:28 +00:00
CodingCellist
ba24892e2f
[ new ] Couple of useful things for Vect (#2904)
Co-authored-by: Ohad Kammar <ohad.kammar@ed.ac.uk>
Co-authored-by: André Videla <andre.videla@gmail.com>
Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
2023-03-03 15:58:44 +00:00
CodingCellist
7156866778
[ admin ] Update what should go in the changelog (#2905)
* [ admin ] Update what should go in the changelog

There has been some stuff inconsistently slipping through the cracks, so
it is probably best to explicitly include it.

* [ admin ] Bloody linter...

* [ admin ] Third time's the charm?

Dear linter: [REDACTED]

* [ admin ] Reword PR template

"an addition" is too broad for what it was intended for: paper
implementations
2023-03-03 15:46:06 +00:00
Ohad Kammar
1ea1cbeede Refactor Data.Nat to use preorder reasoning to improve readability 2023-03-03 15:45:31 +00:00
rhiannon morris
20ecc02569
add Functor impl for Tokenizer (#2901) 2023-02-28 09:20:21 +00:00
Justus Matthiesen
a40eaead0b [ fix ] don't erase argument when type is erased
When the linearity is called on an application in erasure mode, the
function type containing the relevant quantity may already be erased. In
that case, we return the original term and an empty usage.

Returning an empty usage is potentially incorrect but no linearity is
done in erasure mode, making his safe.
2023-02-27 13:41:55 +00:00
G. Allais
310a8f12cd
[ new ] missing buffer primitives (#2893) 2023-02-26 17:50:52 +00:00
Andre Videla
0f4464a690 add logs to linear check 2023-02-25 22:29:34 +00:00
Andre Videla
891c1751ed add tests 2023-02-25 12:19:29 +00:00
Katarzyna Marek
a2c82e934e
[ contrib ] Sufficient view of lists (#2841) 2023-02-22 12:13:13 +00:00
Alex1005a
a9ad1dd0cc
[ contrib ] Performance improvement gcd in Data.Nat.Factor (#2886) 2023-02-22 12:08:49 +00:00
G. Allais
dc1b5387b8
[ re #2832 ] warn about conflicting fixity declarations (#2889) 2023-02-19 16:29:10 +00:00
pinselimo
2dbb824a93
[ doc ] Add constructor docstrings (#2789)
Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
2023-02-19 10:15:39 +00:00
crisoagf
7f9db70e15
Add PreorderReasoning comforts (#2778)
* Add PreorderReasoning comforts

* Drop interface approach in favour of computation

* Update libs/base/Syntax/PreorderReasoning.idr

---------

Co-authored-by: Cristóvão Gomes Ferreira <crisoagf@melo-gibson>
Co-authored-by: Ohad Kammar <ohad.kammar@gmail.com>
Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
CI integration co-authored-by: @stefan-hoeck
2023-02-17 17:47:54 +00:00
Justus Matthiesen
0ef1917bf0 [ cleanup ] move calcTerminating to Core.Termination.SizeChange 2023-02-17 14:47:33 +00:00
Stefan Höck
b543daf5ab
[ contrib ] move SortedMap and SortedSet to base (#2884) 2023-02-16 11:02:43 -06:00
Zoe Stafford
ff822a747b
Js char io (#2887)
* Implement `{get,put}Char` for javascript backend

* Update changelog
2023-02-13 15:48:07 +00:00
Guillaume Allais
3bccf8e212 [ fix ] highlight record constructor 2023-02-13 15:41:56 +00:00
Andy Lok
a1d0c7c478 [ fix #2087 ] Fix multiline string on CRLF 2023-02-13 14:21:09 +00:00
Mathew Polzin
2e9c7fb8b5
Create a separate Makefile for the Idris 2 support libraries. (#2869)
* Create a separate Makefile for the Idris 2 support libraries.

* Update INSTALL.md

* satisfy natural language linter

* Add to CHANGELOG

* Update CHANGELOG.md
2023-02-09 16:49:49 -06:00
Guillaume Allais
f76c4c4307 [ fix ] respect visibility in forward data declarations 2023-02-08 22:00:25 +00:00
Guillaume Allais
b173267f50 [ cleanup ] now that we can assert_total on data 2023-02-08 17:42:02 +00:00
G. Allais
7c66d10eae
[ papers ] Type-based Divide & Conquer (#2860) 2023-02-08 17:19:24 +00:00
Guillaume Allais
72bd3eed45 [ doc ] for the size-change module
Having a dependent NameMap would allow us to give more precise
types for all of these functions.
2023-02-08 16:13:04 +00:00
Guillaume Allais
c6b96080c2 [ refactor ] split up Core.Termination 2023-02-08 16:13:04 +00:00
Justus Matthiesen
6edbfc59a5 [ test ] non-terminating function from issue #2448 2023-02-08 16:13:04 +00:00
Justus Matthiesen
7eed472ac5 [ termination ] update changelog 2023-02-08 16:13:04 +00:00
Justus Matthiesen
914d68858b [ termination ] faithful implementation of size-change graph termination analysis
- call sequences in termination errors now carry location information
- new error message (`BadPath`) for late-starting loops
- [ fix ] transitive closure of size-change graphs no longer ignores function arguments
- update existing tests accordingly
2023-02-08 16:13:04 +00:00
Justus Matthiesen
9fd28bc130 [ size-change ] implement Ord instance 2023-02-08 16:13:04 +00:00