Commit graph

123 commits

Author SHA1 Message Date
Leonardo de Moura
305070d1a6 feat: register trace.Elab 2019-12-09 15:22:25 -08:00
Leonardo de Moura
c7b8a03b14 fead: add basic elabId 2019-12-08 19:14:44 -08:00
Leonardo de Moura
a15a6967b3 feat: add #check command 2019-12-08 18:03:34 -08:00
Leonardo de Moura
fddeecaaa6 feat: elaborate binders 2019-12-08 17:59:11 -08:00
Leonardo de Moura
984b8f5eba feat: save trace at MessageLog 2019-12-08 10:18:58 -08:00
Leonardo de Moura
9296bfde3f feat: add tracingAt 2019-12-08 09:51:51 -08:00
Leonardo de Moura
1352619ee4 refactor: MonadTracer and helper functions
This commit adds
- `addContext : MessageData -> m MessageData` method. We need it to
  make sure we wrap the message with the current context. Before this
  commit I had to redefine `trace` for `MetaM`, `SynthM`, and
  `TermElabM`.
- polymorphic `traceM` method.
2019-12-08 09:05:15 -08:00
Leonardo de Moura
f93b675ad4 feat: add tracing support 2019-12-08 08:34:00 -08:00
Leonardo de Moura
713fd29e92 feat: add basic elaborators 2019-12-08 08:33:47 -08:00
Leonardo de Moura
3c6fd1e03f feat: add runTermElabM 2019-12-08 07:48:40 -08:00
Leonardo de Moura
85a866f5ff feat: elaborate open command 2019-12-08 07:36:16 -08:00
Leonardo de Moura
4aabd0aa94 feat: add namespace resolution 2019-12-07 17:55:31 -08:00
Leonardo de Moura
efaec02b23 feat: add basic commands 2019-12-07 17:55:31 -08:00
Leonardo de Moura
0031769c8b chore: fix names 2019-12-07 17:55:31 -08:00
Leonardo de Moura
145639c45b feat: add testFrontend and infrastructure 2019-12-07 06:24:22 -08:00
Leonardo de Moura
2dcf6dd141 feat: add new CommandElabM and TermElabM 2019-12-06 15:42:37 -08:00
Leonardo de Moura
c05559a99d refactor: cleanup 2019-12-06 14:41:39 -08:00
Leonardo de Moura
b10d751a2f chore: Elaborator ==> Elab 2019-12-06 13:40:20 -08:00
Leonardo de Moura
92958e8d66 refactor: remove Syntax.other
We are going to use synthetic metavariables for postponing elaboration.
2019-12-06 09:23:44 -08:00
Leonardo de Moura
fd20bae8be chore: disable new elaborator before major refactoring 2019-12-06 09:13:32 -08:00
Leonardo de Moura
68e18937b2 chore: remove #preterm 2019-12-05 11:38:53 -08:00
Leonardo de Moura
59eb963153 chore: missing , 2019-12-05 11:26:15 -08:00
Leonardo de Moura
2ae92340ef feat: add intro and assumption 2019-12-05 10:57:48 -08:00
Leonardo de Moura
5b9402f0e3 feat: add Expr.headBeta 2019-12-05 09:01:50 -08:00
Leonardo de Moura
f80ec55149 feat: improve tracing messages 2019-12-05 07:29:01 -08:00
Leonardo de Moura
0f1184e1d6 feat: instantiateMVars when formatting messages 2019-12-05 07:02:28 -08:00
Leonardo de Moura
9715bc7738 fix: missing instantiateMVars 2019-12-05 06:57:50 -08:00
Leonardo de Moura
dd0b71938d feat: register Meta tracing options 2019-12-05 06:38:28 -08:00
Leonardo de Moura
4fe9179f19 feat: option declarations in Lean 2019-12-05 06:18:35 -08:00
Sebastian Ullrich
92380ec5bd feat: implement MetaHasEval for MetaM 2019-12-05 13:20:24 +01:00
Sebastian Ullrich
fde58d8fe4 feat: add Lean.MetaHasEval, rename HasEval to Lean.HasEval 2019-12-05 13:20:24 +01:00
Leonardo de Moura
cc5a3cca29 chore: move helper modules to src/Init/Lean/Util 2019-12-04 17:17:34 -08:00
Leonardo de Moura
f15af1df0a chore: move Lean auxiliary datatypes to src/Init/Lean/Data 2019-12-04 17:00:13 -08:00
Leonardo de Moura
f570d2a1c3 fix: caching condition 2019-12-04 16:14:26 -08:00
Leonardo de Moura
e3b8013c4e feat: add mkAppM
This is the generic application builder.
2019-12-04 16:12:24 -08:00
Leonardo de Moura
dacf69b2f0 chore: remove mkCApp* functions 2019-12-04 13:07:42 -08:00
Leonardo de Moura
ad54d8e024 feat: add helper functions 2019-12-04 12:43:24 -08:00
Leonardo de Moura
5813fbb26a feat: add AppBuilder module
It is essentially a placeholder.
2019-12-04 11:00:17 -08:00
Leonardo de Moura
86279adc63 chore: add more comments, cleanup, enforce linearity 2019-12-04 09:46:26 -08:00
Leonardo de Moura
ab75062eb4 chore: avoid unnecessary complexity 2019-12-04 06:24:33 -08:00
Leonardo de Moura
7f852d1dad doc: getSubgoalsAux 2019-12-04 06:14:05 -08:00
Leonardo de Moura
1ad97e8e9e refactor: simplify code 2019-12-04 05:54:21 -08:00
Leonardo de Moura
a0a7f11faf refactor: remove unnecessary tryResolveCore from tryAnswer 2019-12-04 05:36:53 -08:00
Leonardo de Moura
1e16b31190 doc: Meta/SynthInstance.lean 2019-12-03 20:09:06 -08:00
Leonardo de Moura
4ce457eb51 chore: remove prototype for the new type class resolution
The code has been integrated into the `Meta` module.
2019-12-03 15:01:05 -08:00
Leonardo de Moura
1aa398415c fix: accidental variable shadowing 2019-12-03 14:38:59 -08:00
Leonardo de Moura
bae4a5fc7c fix: use same approach used at instantiateMVars
The idea is to beta reduce whenever we instantiate `?m` at `?m xs`
with a lambda expression.
2019-12-03 14:13:04 -08:00
Leonardo de Moura
43fc18eb41 fix: incorrect local context being used to create new metavariables 2019-12-03 13:31:24 -08:00
Leonardo de Moura
a7aca58bf7 fix: missing instantiateMVars 2019-12-03 13:01:44 -08:00
Leonardo de Moura
618b22e9a1 fix: typo 2019-12-03 12:53:37 -08:00