Commit graph

23100 commits

Author SHA1 Message Date
Sebastian Ullrich
22bb2fbd06 perf: reuse thread-local interpreter 2020-12-17 23:18:43 +01:00
Sebastian Ullrich
af7e44f017 fix: interpreter: make sure to retain options after switching threads 2020-12-17 23:18:43 +01:00
Leonardo de Moura
c7ae8354fd feat: improve type mismatch error messages
Use heuristic to automatically annotate terms with `pp.explicit`.
2020-12-17 07:11:52 -08:00
Sebastian Ullrich
dabe98f09e chore: update stage0 2020-12-16 23:16:14 +01:00
Sebastian Ullrich
4380d4a9da feat: parser: store options & pass to evalConst 2020-12-16 23:15:58 +01:00
Sebastian Ullrich
567034e288 chore: benchmark stdlib with interpreter 2020-12-16 21:47:56 +01:00
Leonardo de Moura
0334bcb1bf chore: update stage0 2020-12-16 10:53:27 -08:00
Leonardo de Moura
a4901f131b feat: mark propDecidable as a scoped instance 2020-12-16 10:45:49 -08:00
Leonardo de Moura
8453fd3ad0 chore: update stage0 2020-12-16 10:45:27 -08:00
Leonardo de Moura
7c865e7bd9 feat: sort instances by priority 2020-12-16 10:45:27 -08:00
Leonardo de Moura
8b51f6279e chore: fix tests 2020-12-16 10:45:27 -08:00
Leonardo de Moura
fe08b28c7c feat: add Array.insertionSort 2020-12-16 10:45:27 -08:00
Leonardo de Moura
d1437a3fb3 chore: update stage0 2020-12-16 10:45:24 -08:00
Leonardo de Moura
0fa262bb93 feat: add priority to InstanceEntry 2020-12-16 10:40:58 -08:00
Sebastian Ullrich
29c2023410 fix: adapt to new matchAlt syntax 2020-12-16 18:52:56 +01:00
Sebastian Ullrich
4bb18eb3b5 chore: update stage0 2020-12-16 18:52:39 +01:00
Sebastian Ullrich
4e3025fe81 feat: Nix: use HEAD as stage0 2020-12-16 18:52:39 +01:00
Sebastian Ullrich
4812f2aa64 chore: restore correct position for match errors 2020-12-16 18:27:05 +01:00
Sebastian Ullrich
f9dcbbddc4 refactor: remove optional leading pipe from match, use many1Indent instead of sepBy1 2020-12-16 18:27:05 +01:00
Sebastian Ullrich
d22d639fcb refactor: rename "antiquot scope" ~> "antiquot splice" 2020-12-16 17:44:20 +01:00
Leonardo de Moura
75bf10e0d8 chore: update stage0 2020-12-16 07:45:49 -08:00
Leonardo de Moura
97642bd000 fix: prio issue 2020-12-16 07:44:48 -08:00
Leonardo de Moura
a008816102 chore: remove workaround 2020-12-16 07:34:40 -08:00
Leonardo de Moura
613394afab chore: update stage0 2020-12-16 07:32:30 -08:00
Leonardo de Moura
3d5082dde3 feat: simplify Attr.simple parser 2020-12-16 07:29:18 -08:00
Leonardo de Moura
7b67cd2c4a chore: fix priorities 2020-12-16 07:11:02 -08:00
Leonardo de Moura
5b588b5984 fix: defaultInstance priorities 2020-12-16 06:52:55 -08:00
Leonardo de Moura
170d2a49ad chore: update stage0 2020-12-16 06:45:11 -08:00
Leonardo de Moura
e3540a5d8f chore: remove high builtin parser
It doesn't allow us to use `high` at `Prelude.lean` because
the macro expander for it is only defined at `Notation.lean`
2020-12-16 06:42:52 -08:00
Leonardo de Moura
629540028c chore: update stage0 2020-12-15 21:49:09 -08:00
Leonardo de Moura
16747d3986 chore: remove attrParam syntax category 2020-12-15 21:47:24 -08:00
Leonardo de Moura
dc01e79388 chore: update stage0 2020-12-15 21:26:15 -08:00
Leonardo de Moura
85e0b4fdb0 chore: add priority issue workaround 2020-12-15 21:25:37 -08:00
Leonardo de Moura
31e1851b21 fix: priority 2020-12-15 21:10:02 -08:00
Leonardo de Moura
d8f7ea4c27 chore: update stage0 2020-12-15 20:57:48 -08:00
Leonardo de Moura
901e58b131 fix: priority 2020-12-15 20:57:00 -08:00
Leonardo de Moura
4e3e6dd922 fix: test 2020-12-15 20:38:21 -08:00
Leonardo de Moura
db526ff5be chore: update stage0 2020-12-15 20:34:00 -08:00
Leonardo de Moura
b981b0d2b3 chore: missing case 2020-12-15 20:29:42 -08:00
Leonardo de Moura
d4ae9e73b1 fix: missing comma 2020-12-15 20:29:28 -08:00
Leonardo de Moura
ed87480093 refactor: move to attr syntax category 2020-12-15 20:22:04 -08:00
Leonardo de Moura
42a28261fd chore: temporarily use 100000 as priority 2020-12-15 20:21:27 -08:00
Leonardo de Moura
52c815e750 chore: update stage0 2020-12-15 20:18:53 -08:00
Leonardo de Moura
095a27c197 feat: add missing attribute parsers 2020-12-15 20:18:26 -08:00
Leonardo de Moura
1c3a585475 chore: update stage0 2020-12-15 17:21:58 -08:00
Leonardo de Moura
eeac7fb9f4 feat: declare builtin attr parsers for builtin attributes
@Kha I believe this is the minimal set for covering the attributes we
have right now. The parser `simple` covers most of them, and the
dispatch is performed using the identifier.
Otherwise, the dispatch will be based on the node kind.
The `simple` parser is a bit hackish, but it is quite covenient for
simple attributes that do not require complex parameters.
2020-12-15 17:20:28 -08:00
Leonardo de Moura
a08848052f chore: update stage0 2020-12-15 16:47:17 -08:00
Leonardo de Moura
6100ed9283 feat: add LeadingIdentBehavior type
Different strategies for handling the leading identifier in the
`Pratt` parser loop.
2020-12-15 16:45:14 -08:00
Leonardo de Moura
152ad612dd chore: update stage0 2020-12-15 16:14:06 -08:00
Leonardo de Moura
9e3b3b2495 refactor: move attribute related parsers to separate file 2020-12-15 16:13:11 -08:00