Commit Graph

1183 Commits

Author SHA1 Message Date
Denis Buzdalov
eddcbcdc75 [ base ] Add modifyRef into the Ref interface 2023-12-08 18:54:57 +00:00
Denis Buzdalov
8557b5b810 [ typo ] Fix a silly typo 2023-12-08 18:54:57 +00:00
Denis Buzdalov
e3ff0b7786 [ minor ] Remove a compilation warning from prelude 2023-12-08 18:54:57 +00:00
russoul
f2e6dc4313 Add dependent congruence of arity 1 and 2 for heterogeneous equality 2023-11-30 10:08:54 +00:00
Andor Penzes
82e4fd9da7
Add foldrImplGoLemma to Data.Vect (#2835)
Co-authored-by: CodingCellist <teh6@st-andrews.ac.uk>
2023-11-30 10:07:41 +00:00
0xd34df00d
6dd25cd9ec [ base ] Add mapPropertyRelevant, tabulate and (++) for Vect's All 2023-11-30 09:53:05 +00:00
G. Allais
b08efbea40
[ refactor ] split Core.TT (#3151) 2023-11-29 20:24:01 +00:00
Denis Buzdalov
2c328a51c0 [ elab ] Support more applicative traversals of TTImp 2023-11-09 22:05:36 +00:00
CodingCellist
d80bc1537d
[ base ] Add bindings for ieee Double number consts (#3116) 2023-11-09 14:01:40 +00:00
Denis Buzdalov
64ad807f83 [ deriving ] Try to reduce a type before searching it's showable 2023-10-30 10:07:39 +00:00
G. Allais
bee59d5fde
[ fix ] missing modules in .ipkg files (#3124)
Additionally, we now have bash options to make sure we will fail hard were
this situation to arise once again.
2023-10-27 20:37:00 +01:00
G. Allais
e2d2710504
[ linear ] introduce mapFst, mapSnd (#3121)
* [ linear ] introduce mapFst, mapSnd

* [ new ] add insertAt, the inverse to lookup
2023-10-27 13:22:13 +01:00
Denis Buzdalov
5f29b0b9c5 [ elab ] Add an ability to inspect in which function we currently are 2023-10-26 15:42:26 +01:00
Denis Buzdalov
50a579fa18 [ elab ] Implement an operation of returning referred defs of a def 2023-10-26 15:42:26 +01:00
Adowrath
ea093ffaed
[ warning ] for incompatible visibilities on forward decls and definitions. (#3063) 2023-10-25 11:24:43 +01:00
Denis Buzdalov
305604d243
[ base ] Implement a bunch of standard interfaces for Data.These (#3117)
* [ base ] Implement a bunch of standard interfaces for `Data.These`

* [ base ] Add couple of eliminators with default values for `These`
2023-10-25 11:15:28 +01:00
Raffi Sanna
4097e6c993 Switch from 'fast' string functions to normal string functions 2023-10-23 12:01:13 +01:00
Raffi Sanna
f694e5e2f0 Use do notation in some 2023-10-19 08:45:33 +01:00
Denis Buzdalov
6c35157087 [ ux ] Make isType fail with positioned errors 2023-10-17 18:05:54 +01:00
Denis Buzdalov
f64047b9ac [ safe ] Set deriving escape hatches to be marked as %unsafe 2023-10-17 18:05:54 +01:00
Denis Buzdalov
2358a74a29 [ base ] Implement Zippable for several standard types + small cleanup 2023-10-16 22:41:55 +01:00
0xd34df00d
7c8076c149 [ base ] Relevant and irrelevant traversals for Data.Vect.Quantifiers.All 2023-10-16 09:49:22 +01:00
0xd34df00d
f2a95071a1
[ base ] Add Data.Vect.Quantifiers.All.remember, the inverse to forget (#3096)
Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
2023-10-13 15:26:24 +01:00
Stefan Höck
7fbbb030df
[ new ] add Data.List.grouped function (#3089) 2023-10-13 13:48:15 +01:00
Denis Buzdalov
f7d4b7f4ed [ base ] Add a bridge between MonadState and Ref 2023-10-13 13:47:31 +01:00
Denis Buzdalov
6815aefbe0 [ elab ] Implement file operations, e.g. applicable for type providers 2023-10-13 13:26:46 +01:00
0xd34df00d
32b639ca3c [ base ] Prove anyToFin preserves the property witnessed by Any 2023-10-09 15:03:55 +01:00
0xd34df00d
8d5caaa137 [ base ] Add anyToFin converting a Vect's Any to its index 2023-10-09 15:03:55 +01:00
Denis Buzdalov
1256ded110 [ elab ] Implement Ord for Count 2023-10-04 16:31:38 +01:00
Denis Buzdalov
f3eff838b2 [ perf ] Do not split tree too early 2023-10-01 07:16:20 +01:00
Denis Buzdalov
276d41d86c [ new ] Implement Sized for Seqs 2023-10-01 07:16:20 +01:00
Denis Buzdalov
3886200d29 [ fix ] Make traverse and friends lazy for LazyList 2023-09-25 19:51:17 +01:00
Denis Buzdalov
6dc06cd67d [ base ] Add update functions to sorted maps 2023-09-23 22:47:05 +01:00
Joel Berkeley
f6c000e27e Fix typo in namespace for [bi]traversable composition 2023-09-20 09:15:56 +02:00
Guillaume Allais
b4d7bba550 [ cleanup ] use default arguments
This simplifies most calls to `testsInDir`.
2023-09-07 14:57:22 +01:00
G. Allais
c52b029986
[ new ] function options for case blocks (#3062) 2023-09-01 11:35:52 +01:00
Aleksei Volkov
af7ba2fa67
[ ttc ] Compare modification time with nanosecond precision (#3046) 2023-08-31 11:55:57 +01:00
Denis Buzdalov
a4ccb27c83 [ base ] Add lists' infix-by functions, complementary to existing ones 2023-08-28 13:53:59 +01:00
Denis Buzdalov
cf9a73f86c [ prelude ] Add some lacking %tcinlines 2023-08-23 11:04:53 +01:00
russoul
ebbae42c85 Add uncons' to base; rewrite head' and tail' in terms of uncons' 2023-08-23 11:04:23 +01:00
Marshall Abrams
bdb6531b86 Add documentation for Not. 2023-08-15 20:07:21 -05:00
Steve Dunham
badf1e98c8 [ base ] Make foldr1 and foldr1By public 2023-08-07 08:10:35 +01:00
Robert Wright
3c61471da3 Erase additional PreorderReasoning arguments 2023-08-04 13:37:46 +01:00
Steve Dunham
b481994bef [ fix ] Fixes build broken by #3021 2023-08-01 08:01:12 +01:00
scarf
c7abb148e8
feat: even and odd for Nat and Integral (#3021) 2023-07-31 08:36:40 +01:00
Saransh Chopra
4fcb0fb4a7
Remove decideLTE (#3031) 2023-07-27 08:04:24 +01:00
André Videla
a39bfc6ce3
Merge branch 'main' into constant_fin 2023-07-18 23:46:07 +09:00
Steve Dunham
8d7791ba55
[ base ] Add getTermCols and getTermLines to base library and fix pri… (#3009) 2023-07-18 09:42:47 -05:00
scarf
388d217757
docs: typo in list difference documentation (#3018) 2023-07-16 10:39:36 -05:00
Katarzyna Marek
5fd5b1e732 improvement: use std lib WellFounded for Sufficient 2023-07-05 16:44:07 +01:00
CodingCellist
18e887389f
[ papers ] Port the first part of "Deferring the details [...]" by Liam O'Connor (#2974)
Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
2023-07-05 16:42:58 +01:00
Robert Wright
754f6af55c Add orBothFalse proof 2023-07-05 16:36:55 +01:00
Robert Wright
af3c5fd454 Generalize Prelude proof helpers 2023-07-05 16:36:09 +01:00
stefan-hoeck
c1a5be9b5b [ performance ] make Eq and Ord for Fin run in constant time 2023-07-05 15:58:41 +02:00
Denis Buzdalov
5dcf62499d
[ elab ] Make elab scripts be able to record warnings (#2999) 2023-06-19 16:34:19 +01:00
André Videla
9f20ba2609
Merge pull request #2918 from buzden/min-max-gen-for-connex
[ new ] Add generalisations of `min` and `max` for `StronglyConnex`
2023-06-16 15:27:06 +01:00
Walter Smuts
98e5615dbc Typos: change all uses of inferable to inferrable
Achieves consistency...
2023-06-08 13:45:57 +02:00
Thomas E. Hansen
009eb270c1 Revert "[ fix ] Rename Prelude.Interface NS Lazy to ILazy"
This reverts commit bd231c2076, which is a
separate thing that should be its own PR.
2023-05-30 09:46:24 +02:00
Thomas E. Hansen
bcbe2b8c4f [ fix ] Rename Prelude.Interface NS Lazy to ILazy
This is required due to `Lazy` now being a reserved compiler primitive.

N.B. This may also break other dependencies and/or tools. Notably stuff
     outwith the Idris2 upstream. There's been some discussion in #2987.
2023-05-30 09:46:24 +02:00
Denis Buzdalov
91b7aafb74 [ base ] Add generalisations of min and max for StronglyConnex 2023-05-15 19:15:36 +03:00
Aleksei Volkov
298f91cf0a
[ base ] Implemented Ord for Name, Namespace and UserName (#2973) 2023-05-15 14:45:42 +01:00
Denis Buzdalov
c285ef06dd [ re #2960 ] Move defs of closures data types to a separate module 2023-05-11 15:31:45 +01:00
Robert Wright
9bfa04921a Add symmetric and transitive closure relations 2023-05-08 11:53:21 +01:00
madman-bob
a00b7ee7ec
Public export TTImp reflection functions (#2947)
Co-authored-by: Thomas E. Hansen <teh6@st-andrews.ac.uk>
Co-authored-by: Ohad Kammar <ohad.kammar@gmail.com>
2023-05-05 10:33:32 +01:00
stefan-hoeck
bc1a51ea18 [ regression ] revert to previous implementation of Show 2023-05-02 11:23:14 +02:00
stefan-hoeck
83f5ef27b6 [ new ] Eq, Ord, Semigroup, and Monoid for All 2023-05-02 11:23:14 +02:00
Denis Buzdalov
55efd7dd7b [ new ] Add Compose instances for Bi* interfaces, analogous to present 2023-04-25 12:59:25 +01:00
Steve Dunham
9544162bc4
[ new ] Add support for bi-directional pipes on POSIX systems (resolves #2935) (#2944) 2023-04-15 09:39:17 -05: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
Denis Buzdalov
cf63ee2ef2 [ base ] Add extraction functions to Data.Singleton 2023-03-28 11:29:09 +01:00
Robert Wright
fb956802ab Add Elem get and lookup functions 2023-03-23 19:36:20 +00:00
Steve Dunham
081938bad8 [ base ] Add support for unbuffered stdin 2023-03-07 13:28:25 -08: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
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
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
G. Allais
310a8f12cd
[ new ] missing buffer primitives (#2893) 2023-02-26 17:50:52 +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
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
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
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
Alex1005a
f3e8970f2c
Adding new properties to Data.Nat.Order.Properties (#2879)
* Add succLeftLte function

* Refactor fuelLemma

* Removal of redundant function and rename succLeftLte to decomposeLte

* Fix the style issues
2023-02-07 07:58:41 +00:00
Stefan Höck
f6a731695d
[ new ] constructor plus trivial impl for Interpolation (#2871)
* [ new ] constructor plus trivial impl for Interpolation

* [ doc ] update CHANGELOG

* [ test ] adjust expected test output
2023-02-04 07:47:28 -06:00
Mathew Polzin
ad12f8335c
[ new ] popen/pclose for the NodeJS backend. (#2857)
* implement popen and pclose (to an extent) for NodeJS

* bring node020 back into tests.

* ah, I see what was being done here. Fix the idris for the test.

* fix test's unreachable clause warning

* fix expectation

* Add note to CHANGELOG

* small tweaks to get popen into merge-ready state.
2023-01-30 09:38:42 -06:00
Denis Buzdalov
bbe96929f1 [ minor, base ] Relax requirement of the These.bifold 2023-01-26 22:15:15 +00:00
Denis Buzdalov
f4b44ba109 [ prelude ] Make some higher-kinded functions be tc-inlined 2023-01-25 16:51:11 +00:00
Marek L
7ec96cea7f [ doc ] Remove typo from Prelude.plus doc string and
reformat doc string for `Prelude.minus`
2023-01-24 23:35:03 +00:00
Mathew Polzin
4bedaac811
[ fix ] make color output toggling simpler and also more robust. (#2848)
* make color output toggling simpler and also more robust

* don't unintentionally assert that tests are run in an environment where colors are turned on.

* Update src/Idris/Env.idr
2023-01-22 13:35:57 -06:00
G. Allais
ea4a4c0f85
[ base ] fix the definition of die (#2854) 2023-01-19 11:09:28 +00:00
Mathew Polzin
24ac56de88
Moving Data.List.HasLength into base (#2844) 2023-01-16 00:07:21 -06:00
Denis Buzdalov
936b7270ae [ prelude ] Add lacking implementation of Traversable for Pair 2023-01-09 15:56:21 +00:00
Mathew Polzin
4005b40a95
[new] Vect.Quantifiers.All QoL (#2843)
* Add Show for Vect.All

* Add an alias for HVect to Data.Vect.Quantifiers.All

* Add a few utilities for Vect.Quantifiers.All to make it more at home in listy uses.

* Add CHANGELOG entries.
2023-01-09 00:57:00 -06:00
Stefan Höck
8db12f5a49
[ performance ] improve some Char functions (#2839) 2023-01-06 09:08:38 +00:00
Zoe Stafford
ae2d4efc17 add javascript support to System.Clock
This may behave incorrectly when used with web workers
2022-12-22 11:47:44 +00:00
Zoe Stafford
18ffb852de export {to,from}Nano in System.Clock
also rename some arguments and add docs
2022-12-21 15:49:32 +00:00