Leonardo de Moura
6765440724
chore: remove clutter
2020-10-28 14:11:06 -07:00
Leonardo de Moura
c59f673f60
chore: cleanup
2020-10-28 09:33:19 -07:00
Leonardo de Moura
898a08a0c1
chore: avoid Has prefix in type classes
...
closes #203
2020-10-27 18:29:19 -07:00
Leonardo de Moura
13c2a8ff51
chore: remove #lang lean4 header
2020-10-25 09:54:07 -07:00
Leonardo de Moura
b3678954f4
chore: move to new frontend
2020-10-20 17:19:05 -07:00
Leonardo de Moura
80a0200ab2
chore: move to new frontend
...
@Kha another significant milestone: all files at `src/Lean/Meta` are
being compiled with the new frontend.
2020-10-20 10:59:02 -07:00
Sebastian Ullrich
490c482af2
fix: allow [runParserAttributeHooks] on imported declarations, add non-builtin variant
2020-10-20 09:39:50 +02:00
Sebastian Ullrich
73065860f3
fix: refuse to generate code for imported parsers to avoid duplicate declarations
2020-10-20 09:38:44 +02:00
Leonardo de Moura
e54a207986
refactor: provide Options to lean_eval_const
...
add `ImportM` monad for `addImportedFn`
cc @Kha
2020-10-19 10:21:38 -07:00
Leonardo de Moura
b0564a32b9
feat: add AttrM
...
We are going to use `AttrM` to implement solution 2 described at https://github.com/leanprover/lean4/issues/175
2020-09-21 16:44:20 -07:00
Leonardo de Moura
0abca5475f
refactor: move ppExpr to IO
...
@Kha I am also tracking `currNamespace` and `openDecls`.
BTW, I also tried an experiment where I added `currNamespace` and
`openDecls` to `Meta.Context`, but it looked weird. This information
is only needed in the elaborator and pretty printer.
The `PPContext` object should contain everything you need. You
can put `currNamespace` and `openDecls` in the `Delaborator.Context`.
2020-09-15 18:48:21 -07:00
Leonardo de Moura
12f69a78b7
chore: change meaning of lambdaTelescope
...
`lambdaTelescope` now only consumes `lambda`s.
`lambdaLetTelescope` implements the old behavior.
2020-09-04 13:35:17 -07:00
Leonardo de Moura
eaed6ba6a3
refactor: polymorphic MetaM combinators
2020-08-24 17:03:54 -07:00
Leonardo de Moura
ac565de96c
refactor: add MonadMetaM class
2020-08-24 12:17:47 -07:00
Leonardo de Moura
f46c5d01b1
feat: uniform Exceptions
2020-08-21 17:02:21 -07:00
Leonardo de Moura
916b395d1b
chore: cleanup
2020-08-21 09:29:09 -07:00
Sebastian Ullrich
14211cc932
refactor: more core
2020-08-21 15:51:37 +02:00
Leonardo de Moura
05a0e7f6d0
refactor: build all main monads on top of ECoreM
2020-08-20 18:36:04 -07:00
Sebastian Ullrich
aa452b795d
refactor: make formatter precompiled as well
2020-08-20 15:29:33 +02:00
Sebastian Ullrich
68b9a8e1d1
refactor: move parenthesizer compiler into separate file, generalize
2020-08-20 13:22:57 +02:00
Leonardo de Moura
68a4c145f7
refactor: implement attribute hooks using CoreM
...
We were using a mix of `IO` and `Except`
2020-08-19 14:44:54 -07:00
Sebastian Ullrich
92162ffb7f
feat: check parenthesizer attribute arguments
2020-08-14 19:05:02 +02:00
Sebastian Ullrich
baadfca817
fix: commit missing file...
2020-08-13 17:39:43 +02:00