Commit Graph

653 Commits

Author SHA1 Message Date
Guillaume Allais
552f27f813 [ fix #2640 ] Do not shadow function name during case split 2022-09-02 11:55:15 +01:00
Guillaume Allais
6891490ed2 [ fix ] support for implicits in Deriving.Functor
A lot of refactoring to bring these. That's hopefully the last
feature that was needed...
2022-08-29 18:35:24 +01:00
Mathew Polzin
23e3695d74 Add test for auto implicit case splitting. 2022-08-16 09:23:19 +02:00
Guillaume Allais
4672305fc3 [ fix ] more filtering of invalid datatypes 2022-08-13 11:29:19 +01:00
Justus Matthiesen
a30209d492
[ fix ] Remove stray ")" in Show instance for Term (#2611) 2022-08-08 15:24:07 +01:00
G. Allais
84a504738c
[ doc ] add comments to generated javascript (#2594) 2022-07-18 17:30:56 +01:00
Guillaume Allais
8ecb1aaf95 Revert "Fix issue with case inside a type."
This reverts commit 50ca28c068.
2022-07-18 15:58:29 +01:00
Steve Dunham
50ca28c068 Fix issue with case inside a type. 2022-07-18 14:17:14 +01:00
G. Allais
0cbbf97b79
[ new ] extend Deriving.Functor to (non-strictly) positive functors (#2591) 2022-07-18 14:10:46 +01:00
G. Allais
1f41c8b44d
[ close #647 ] Already fixed (#2581) 2022-07-08 14:16:25 +01:00
Guillaume Allais
ac2ef882f6 [ fix #2573 ] Solve constraints before looking at eq type 2022-07-07 20:36:05 +01:00
Guillaume Allais
19bc798952 [ re #2526 ] Update golden value 2022-07-07 20:34:54 +01:00
Guillaume Allais
d19dbfffff [ fix #2229 ] better warning 2022-07-07 16:42:34 +01:00
G. Allais
4874bf2114
[ fix ] handle implicit arguments in Deriving.Functor (#2572) 2022-07-07 09:55:13 +01:00
Stefan Höck
5a962929e7
[ fix ] issue 2537 (#2538)
Co-authored-by: Zoe Stafford <zoepolarsax@gmail.com>
2022-07-07 09:54:52 +01:00
Guillaume Allais
7db20d38a3 [ cleanup ] Fewer assert_total in deriving Functor 2022-07-04 12:03:49 +01:00
G. Allais
aeeb338e6c
[ new ] deriving Functor (#2568) 2022-07-04 08:58:18 +01:00
Ruslan
dbba32ea09
Fix an eta issue in elaborator-reflection (#2449)
Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
Co-authored-by: Denis Buzdalov <public@buzden.ru>
2022-06-30 22:01:31 +01:00
G. Allais
4024857d20
[ base ] Various Language.Reflection improvements (#2554) 2022-06-22 13:07:27 +01:00
Guillaume Allais
e5802204b6 [ fix ] holes in record types 2022-06-17 10:17:40 +01:00
Guillaume Allais
2060535d08 [ new ] name hints for primitive types 2022-06-14 16:07:37 +01:00
Guillaume Allais
7bd7f1da9c [ fix ] resugaring of DPair 2022-06-08 22:44:55 +01:00
György Kurucz
79a2f677d4 [ re #1282 ] Improve unelaboration of case expressions 2022-06-08 17:01:36 +01:00
Zoe Stafford
b9001439b3 Revert "Transitive dependencies v2 (#2496)"
This reverts commit 51f952714d.
2022-06-08 06:35:39 +01:00
Zoe Stafford
51f952714d
Transitive dependencies v2 (#2496)
* make `depends` collect all transitive dependencies

This happens by installing the (modified) ipkg file along with ttc files

* [ fix ] parsing a package shouldn't always set sourceDir

* linter *sigh*

* Fix test, add changelog

`asDepends` has been changed to `setSrc` as that is for me more intuitive

in idris2/pkg006 the version field was removed from the ipkgs of bar-baz and quux
as idris now expects the version to match the folder

idris2/pkg010 explicitly disables incremental compilation, to prevent extra log info

* (hopefully) fix idris2/pkg13 test on windows

* Actually install the version
This should make things start working
2022-06-07 14:31:14 +01:00
Denis Buzdalov
599027a893 [ fix ] Make able to interpret result of a macro as a function 2022-05-27 09:36:44 +01:00
G. Allais
607a2a2110
[ IDE ] refine command (#2490) 2022-05-25 11:29:03 +01:00
Zoe Stafford
932a24baa1 Revert "make depends collect all transitive dependencies (#2469)"
This reverts commit fde6269c7e.
2022-05-21 06:49:07 +01:00
Zoe Stafford
fde6269c7e
make depends collect all transitive dependencies (#2469)
* make `depends` collect all transitive dependencies

This happens by installing the (modified) ipkg file along with ttc files

* [ fix ] parsing a package shouldn't always set sourceDir

* linter *sigh*

* Fix test, add changelog

`asDepends` has been changed to `setSrc` as that is for me more intuitive

in idris2/pkg006 the version field was removed from the ipkgs of bar-baz and quux
as idris now expects the version to match the folder

idris2/pkg010 explicitly disables incremental compilation, to prevent extra log info

* (hopefully) fix idris2/pkg13 test on windows
2022-05-20 16:20:54 +01:00
Guillaume Allais
7c784dd89c [ fix ] missing rigs in doc type signatures 2022-05-12 10:25:54 +01:00
G. Allais
4256cd15fd
[ highlighting ] case trees in :di (#2440) 2022-04-29 12:52:23 +01:00
Steve Dunham
04e65529f6 Better parse error for missing paren after with 2022-04-29 08:59:40 +01:00
G. Allais
05baf44b5b
[ refactor ] Index Pretty over the type of annotations (#2371) 2022-04-27 12:26:59 +01:00
Guillaume Allais
81ba322a4b Revert "[ fix ] search should solve auto implicits before implicits"
This reverts commit 6dd68e8924.
because of issue #2437
2022-04-27 11:00:51 +01:00
Guillaume Allais
6dd68e8924 [ fix ] search should solve auto implicits before implicits 2022-04-26 15:07:51 +01:00
G. Allais
98b1062772
[ fix ] :printdef support for P(D)Pair & Equal (#2416) 2022-04-15 20:39:46 +01:00
Guillaume Allais
ec4cf3d48c [ fix ] pretty printing of misspellings 2022-04-15 20:18:48 +01:00
Guillaume Allais
0986cf177b [ parse ] better error message for list literals
I got fed up with being puzzled whenever edwin's trailing commas
and my leading commas clash and the error location is the opening
square bracket rather than the repeated comma.
2022-04-15 11:33:20 +01:00
Guillaume Allais
e0f5f541e2 [ fix #2402 ] Check totality before exiting failing block 2022-04-08 13:21:46 +01:00
Guillaume Allais
55d6c50706 [ fix ] make 'failing' whitespace-insentitive 2022-04-07 13:59:27 +01:00
G. Allais
79e733b848
[ new ] multi-with elaborated as nested withs (#2403) 2022-04-07 09:30:23 +01:00
Thomas E. Hansen
a644a85a57 [ base ] public export quantifier functions 2022-04-04 13:24:12 +02:00
G. Allais
4b6936d615
[ fix ] allow refined implicit patterns in with clauses (#2393) 2022-04-03 10:45:29 +01:00
Guillaume Allais
ad78457869 [ fix ] location information in with clauses 2022-04-01 11:41:48 +01:00
Guillaume Allais
bc9a319ddf [ parser ] bunched args in implementation implicits 2022-03-31 15:46:44 +01:00
Denis Buzdalov
2538b1e82b
[ syntax ] Require indent for blocks like mutual and failing (#2387) 2022-03-31 12:54:38 +01:00
Denis Buzdalov
03f23b0457 [ error ] Improve the indented non-empty block's error message 2022-03-31 10:44:06 +01:00
Guillaume Allais
921d3b7b50 [ parser ] better error messages for Haskellers 2022-03-31 10:43:46 +01:00
G. Allais
2aa0069e63
[ doc ] also display definition's visibility (#2374) 2022-03-24 23:11:10 +00:00
Denis Buzdalov
e8d3d788c1
[ base ] Add some more properties, functions and interface implementations (#2361) 2022-03-23 13:33:13 +00:00
Giuseppe Lomurno
f38feaa48d Clean path in more Core.Directory functions 2022-03-23 12:49:36 +00:00
G. Allais
35b2362487
[ new ] failing blocks (#2360) 2022-03-23 12:01:13 +00:00
Ohad Kammar
319c7f7b86
Move Syntax.PreorderReasoning into base (#2368) 2022-03-22 20:58:36 +00:00
G. Allais
0dfa7d8d79
[ doc ] prettier :di (#2356) 2022-03-18 08:45:18 +00:00
Denis Buzdalov
05d64483f6 [ refactor ] Factor out a type for primitive types out of Constant 2022-03-10 23:07:20 +00:00
Guillaume Allais
14f2196d15 [ doc ] return module header docs 2022-03-09 13:31:30 +00:00
G. Allais
1c396744d9
[ doc ] :printdef for interface implementations (#2340) 2022-03-07 11:47:20 +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
Balazs Komuves
3345460fe9
[ fix #2176 ] Records in where-blocks are in the wrong namespace (#2187) 2022-02-16 15:43:50 +00:00
Guillaume Allais
bec4a0a88e [ re #499 ] quantity-aware with-clauses 2022-02-09 09:19:40 +00:00
madman-bob
0ee9632e45
[ refactor ] Abstract Prelude.elem to work with all Foldables (#2294) 2022-02-01 21:34:29 +00:00
Stefan Höck
f1d56a4e0f
[ syntax ] Namespaced idiom brackets (#2284) 2022-01-24 16:18:36 +00:00
Mathew Polzin
35a84e505d
[fix #2033] determining when to rebuild modules (#2188) 2022-01-21 10:26:20 +00:00
Mathew Polzin
e7ed760016
[ new ] optional language version field to ipkg files. (#2256) 2022-01-20 10:05:53 +00:00
MarcelineVQ
6d10ca09b4 [ base ] add Show for Ordering 2022-01-19 22:12:36 +00:00
Robert Wright
76d1936fad Add Singleton type 2022-01-19 14:22:40 +00:00
Vincent de Haan
3a38424e69 Minor fix in documentation 2022-01-11 22:36:22 +01:00
Jason Dagit
1d7207fe05
[ fix #2202 ] Use SnocList in parser state to avoid quadratic slowdown (#2203)
Co-authored-by: Guillaume Allais <guillaume.allais@ens-lyon.org>
2022-01-11 16:06:19 +00:00
teggot
d3aed0404c
[ fix #1959 ] use modern record update syntax (#2196) 2021-12-16 18:23:18 +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
Balazs Komuves
6cc20a9974
[ fix #2138] Add an %unhide pragma (#2181)
* add %unhide pragma

* add a test case

* clean up

* more consistent English usage (+fix some typos)

* add a warning for unhiding not-already-hidden names

* move `unhide` (and `hide`) to the bottom of the source file to avoid having to forward-declare `recordWarning`
2021-12-11 18:03:36 -08:00
Balazs Komuves
c3ec522077
[ fix #1404 ] Totality annotation for data type definitions (#2179)
Co-authored-by: G. Allais <guillaume.allais@ens-lyon.org>
Co-authored-by: stefan-hoeck <hock@zhaw.ch>
2021-12-08 16:08:26 +00:00
Balazs Komuves
e511bc6884
[ fix #2098 ] Allow unclosed comment blocks (#2173) 2021-12-07 15:46:38 +00:00
Balazs Komuves
5e775aaa41
[ fix #1945 ] Add default support for record fields (#2175) 2021-12-06 21:21:42 +00:00
Balazs Komuves
3f3912e934
[ fix #2065 ] Use postfix projections if prefix ones are off (#2169) 2021-12-06 18:14:13 +00:00
Guillaume ALLAIS
32140f577f [ fix ] resugaring of snoc lists 2021-12-02 12:49:07 +00:00
G. Allais
059f74ad0b
[ fix #1861 ] rewrite_impl is linear (#2150) 2021-11-25 17:07:05 +00:00
Guillaume ALLAIS
500df117c1 [ fix #1741 ] Do not replace names in as-patterns 2021-11-25 16:04:44 +00:00
Guillaume ALLAIS
56e599de9c [ re #1987 ] test case 2021-11-25 15:12:54 +00:00
Guillaume ALLAIS
662f1eabc5 [ re #215 ] test case 2021-11-24 20:28:07 +00:00
Guillaume ALLAIS
63bf9f2900 [ re #1852 ] Partial fix without the Hole UN refactoring 2021-11-24 10:54:32 +00:00
Denis Buzdalov
ab3862798b [ fix ] Use right reflection constructor name for unambiguing with 2021-11-23 16:42:51 +00:00
claymager
283f9bd00f
[ fix ] Forbid "." as namespace identifier (#2134) 2021-11-22 12:13:08 +00:00
Guillaume ALLAIS
0bc18bd34a [ fix #2072 ] correctly handle fixity in printer 2021-11-19 17:42:07 +00:00
Guillaume ALLAIS
f99b875d7e [ fix #2095 ] error on duplicated updates 2021-11-19 16:30:35 +00:00
G. Allais
489e8c7cbc
[ re #2038 ] doc for reserved symbols (#2126) 2021-11-18 18:13:20 +00:00
Mathew Polzin
0eba4c691e
Add %deprecate pragma (#2086) 2021-11-17 10:41:03 +00:00
André Videla
9e6678e3d3
Merge pull request #2102 from madman-bob/list-singleton
Add List singleton function
2021-11-10 00:46:40 +00:00
Edwin Brady
2f6ec76223
Get information about names in reflection (#2110)
* Only normalise a search goal if it's fast

While we do end up normalising it anyway on success, there might be
things blocking it that make the intermediate terms very big, so only do
it speculatively to see if it's quick.

* Get information about names in reflection

Currently this is only whether it's a function, or data or type
constructor. I expect more may be useful/possible.
2021-11-07 15:06:53 +00:00
Robert Wright
921bc24a2a Add List singleton function 2021-11-05 16:08:54 +00:00
G. Allais
668c221474
[ re #2032 ] faster version of fromInteger (#2090) 2021-11-02 17:43:01 +00:00
G. Allais
15cc8243f7
[ re #2001 ] Make some prelude interfaces total (#2083)
The prelude interfaces that have default definitions for all of
their fields are declared total so that users are forced to think
about meeting the minimal requirements for an implementation to be
valid.
2021-11-02 15:34:52 +00:00
Edwin Brady
d531cc8dea
Cumulativity preparation: Add field for universe level to TType (#2076)
* Add field for universe level to TType

This doesn't do anything yet, other than introduce new universe
variables whenever we introduce a new type, but it's the first step
towards checking the universe hierarchy. Next step is to add constraints
when checking pi, unifying/converting types, and when adding data
constructors.

* TTC version increment

Thought I'd done this, but apparently I didn't save the file. Oops!

* Add structure for universe constraints

* Fix display of ambiguity errors

We need to store the Context in errors at the point where the error
occurs, or we might get some nonsense in the message. There's still a
couple of places in Error where we don't do this right. This fixes one
of them, and improves a few messages in the process.
2021-10-31 00:00:16 +01:00
Edwin Brady
2df3ecc2e3
Fix display of ambiguity errors (#2075)
We need to store the Context in errors at the point where the error
occurs, or we might get some nonsense in the message. There's still a
couple of places in Error where we don't do this right. This fixes one
of them, and improves a few messages in the process.
2021-10-30 23:08:53 +01:00
Guillaume ALLAIS
a8d5e005e1 [ fix #2070 ] Look under MaybeMispelling when failing quickly 2021-10-29 17:57:55 +01:00
G. Allais
ac7a4644b8
[ fix #2046 ] only refold positive integers as nats (#2064) 2021-10-26 17:16:31 +01:00
Ellis Kesterton
9c2ce646f9
[ fix #2002 ] implicits used in record update (#2007) 2021-10-26 17:15:29 +01:00
CodingCellist
4a1bb310a7
[ fix #1175 ] case-splitting for inline case blocks (#2010) 2021-10-26 15:51:52 +01:00
Alissa Tung
1bd81dfbbb
[ fix #2053 ] do not show ambiguous private names (#2056)
Co-authored-by: Guillaume ALLAIS <guillaume.allais@ens-lyon.org>
2021-10-26 15:51:34 +01:00
G. Allais
b9834978cb
[ re #2041 ] better runtime error for holey expression (#2045) 2021-10-26 12:43:39 +01:00