Commit Graph

66 Commits

Author SHA1 Message Date
André Videla
75032a7164
Emit warning for fixities with no export modifiers (#3234)
* Emit warning for fixities with no export modifiers

This is to help update all the existing code to program with explicit
fixity export directives in preparation for the behavioral change where
they will become private by default.
2024-04-03 15:41:57 +01:00
Mathew Polzin
7219486aec
Fix ambiguity error with Uninhabited interface implementations. (#3228) 2024-03-15 17:21:05 -05:00
Denis Buzdalov
da916b68d4 [ fix ] Correctly manage the empty file case while reading a file 2023-12-21 13:30:30 -06:00
Denis Buzdalov
64ad807f83 [ deriving ] Try to reduce a type before searching it's showable 2023-10-30 10:07:39 +00:00
Denis Buzdalov
6c35157087 [ ux ] Make isType fail with positioned errors 2023-10-17 18:05:54 +01:00
Denis Buzdalov
f7d4b7f4ed [ base ] Add a bridge between MonadState and Ref 2023-10-13 13:47:31 +01:00
Denis Buzdalov
0c40a76c2c [ re #2884 ] Move existing test to an appropriate category 2023-10-01 07:16:20 +01:00
Robert Wright
61878ef1b6 Remove trivial testing input files 2023-09-07 14:57:22 +01:00
Robert Wright
09466a96bb Add testing utilities script 2023-09-07 14:57:22 +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
André Videla
a39bfc6ce3
Merge branch 'main' into constant_fin 2023-07-18 23:46:07 +09: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
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
Denis Buzdalov
936b7270ae [ prelude ] Add lacking implementation of Traversable for Pair 2023-01-09 15:56:21 +00:00
G. Allais
4cd38a8c5d
[ new ] deriving Show (#2741) 2022-11-02 11:57:07 +00:00
Aleksei Volkov
c906720ee3
[ base ] Change Reader to fix search for MonadReader instance (#2729) 2022-10-22 19:13:52 +01:00
stefan-hoeck
0e956249cc [ performance ] efficient foldr and foldMap for SnocList 2022-10-04 12:19:32 +02:00
G. Allais
81ea363ae8
[ base ] deriving Traversable (#2678) 2022-09-24 12:43:49 +01:00
Guillaume Allais
5631608782 [ base ] deriving Foldable 2022-09-24 10:20:25 +01:00
Mathew Polzin
4a348c1f95 Public export remaining function to allow for proofs involving parsing numbers. 2022-07-18 14:10:05 +01:00
Steve Dunham
a0d9e2bbba
Update tests using base64 utility to also work on macos (#2536)
* Update tests using base64 utility to also work on macos

* Fix invocation of base64 in refc/buffer test.
2022-07-13 06:46:31 -07:00
Joel Berkeley
bf87b623ef
add scanr; scanr1; unsnoc for Vect (#2471)
* add `scanr` and `scanr1` for `Vect`

* add tests

* tests

* docstring

* typos

* add unsnoc

* simplify unsnoc

* docstring

* typos
2022-05-12 17:54:34 +01:00
Mathew Polzin
c91a768486
System NodeJS additions (#2401) 2022-04-07 10:09:30 +01:00
Joel Berkeley
fc45f7d888
[ base ] add insertAt for List (#2336) 2022-03-17 18:23:47 +00:00
Joel Berkeley
0ab0ecb199
add replaceAt for List (#2335) 2022-03-03 23:40:18 +00:00
Jan de Muijnck-Hughes
4ba3bb6670
[ fix ] Literate things (#2312)
Co-authored-by: G. Allais <guillaume.allais@ens-lyon.org>
2022-02-18 11:29:52 +00:00
Joel Berkeley
5abc01453d
add deleteAt for List (#2317) 2022-02-11 09:28:36 +00:00
Robert Wright
1776efa8a5 Allow Type-level String operations 2022-02-03 16:10:47 +00:00
Robert Wright
d85016b64d Add Fin modular arithmetic Num instance 2022-01-20 10:13:20 +00:00
Robert Wright
76d1936fad Add Singleton type 2022-01-19 14:22:40 +00:00
Mathew Polzin
4220c644cf
Add a few missing NodeJS FFI functions to System (#2271)
* support for system command via node backend.

* Add env var set/unset

* fix env unset function

* Update libs/base/System.idr

* modify system test to cover node and chez.

* Add base tests for env get/set
2022-01-18 22:43:03 -08:00
Jason Dagit
78ff2059f3 system_info_os001: Add all the OSs that System.Info.os knows about 2021-12-25 21:52:21 -08:00
Denis Buzdalov
a09c5082c5
[ base ] Use Fin n as index in Bits (#2192) 2021-12-16 18:26:52 +00:00
Balazs Komuves
3463adbc48
[ fix #2032 ] Slow typechecking on Int operation when Data.Fin.fromInteger is in scope (#2189) 2021-12-13 13:47:53 +00:00
Robert Wright
4732486bbc Add System run function 2021-11-05 11:59:17 +00:00
Robert Wright
dc47df688c Add System.File fRead function 2021-11-05 11:59:17 +00:00
Robert Wright
c1fc487bec Return error code from pclose 2021-11-05 11:59:17 +00:00
Robert Wright
c964f8d8bc Add System escapeCmd function 2021-11-05 11:59:17 +00:00
Mathew Polzin
f078d5f5dc
clean up some deprecations (#2057)
* deprecate Data.Nat.Order.decideLTE

* Add properties for LTE/GTE that produce the difference.

* remove deprecated function now that it is available in the base library.

* remove two deprecated lines.

* remove module deprecated since v0.4.0

* fix prelude reference to renamed primitive.

* finish removing Data.Num.Implementations

* remove deprecated dirEntry function.

* remove deprecated fastAppend. Update CHANGELOG.

* replace fastAppend in test case

* replace fastAppend uses in compiler.

* remove new properties that weren't actually very new.
2021-10-24 12:06:57 +01:00
Joel Berkeley
078db21edf
Return a Vect from Stream take (#1812)
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-08-30 16:00:20 +01:00
Mathew Polzin
cdc157a333 Add javascript support for getting system time as integer. 2021-08-30 15:35:49 +01:00
madman-bob
3e1f6aba56
Add copyFile to System.File (#1797)
Co-authored-by: Stiopa Koltsov <stepan.koltsov@gmail.com>
2021-08-30 15:31:37 +01:00
Mathew Polzin
b03395debe
Merge pull request #1603 from ska80/remove-realpath-notes
Remove all mentions of `realpath` from docs
2021-07-26 12:38:39 -07:00
Stiopa Koltsov
4eff6ac916 System.Directory.listDir
This function is what users want 99.9% of time.
2021-07-17 14:58:57 +01:00
Stiopa Koltsov
c7629e20fe Skip dot and dot-dot in nextDirEntry
These entries returned by `readdir` are legacy of Unix API, we don't
really need them. Most APIs do not return them (for example Java
`Files.newDirectoryStream` or Python `os.listdir`).
2021-07-17 14:58:28 +01:00
Stiopa Koltsov
0ecf74e434 System.Directory.nextDirEntry
* add `nextDirEntry` which returns `Maybe String`, so `Nothing` on
  the end of directory unlike `dirEntry` which returns unspecified error
  on the end of directory
* `dirEntry` is deprecated now, but not removed because compiler depends on it
* native implementation of `dirEntry` is patched to explicitly reset `errno`
  before the `readdir` call: without it end of directory and error were
  indistinguishable
* test added
2021-07-17 14:57:27 +01:00
Stepan Koltsov
ce44d3b50a
Change semantics of lines and unlines function to match Haskell and other languages (#1585)
* Add trailing newline on non-empty list in unlines

There are several reasons to do that:
* a line in a text file is something which ends with newline,
  and the last line is not special
* `unlines []` should be different from `unlines [""]`
* `unlines (a ++ b) = unlines a ++ unlines b`
* Haskell does it

* Change lines function behaviour
2021-07-17 14:54:23 +01:00