Commit graph

531 commits

Author SHA1 Message Date
Leonardo de Moura
8b43314e23 feat(library/aliases,frontends/lean/parser): take local_ref's into account when defining new aliases; use get_local_ref at id_to_expr; use get_local_ref at resolve_local_name
see #1251
2016-12-15 14:10:44 -08:00
Leonardo de Moura
e13bac41c3 fix(frontends/lean): 'sorry' axiom auto generation 2016-12-08 10:31:52 -08:00
Leonardo de Moura
d454cc8bcd feat(frontends/lean/elaborator): do not populate info_manager during thread finalization 2016-11-30 17:14:15 -08:00
Leonardo de Moura
2309e35296 fix(frontends/lean): position information for by tac
Now, Ctrl-c-Ctrl-g also works when hovering the beginning of the tactic
instead of the beginning of the `by` token.
The idea is to make the behavior consistent with `begin...end` blocks.
2016-11-29 17:08:10 -08:00
Gabriel Ebner
e1cb1a8cd2 feat(util/task_queue,library/versioned_msg_buf): rudimentary support for task interruption 2016-11-29 11:12:43 -08:00
Leonardo de Moura
78608a37e9 fix(frontends/lean/definition_cmds): implicit universe theorem parameters bug
See discussion at #1178
2016-11-29 11:12:43 -08:00
Gabriel Ebner
a8df381d20 feat(*): parallel compilation 2016-11-29 11:12:40 -08:00
Leonardo de Moura
0554fd5997 fix(frontends/lean): name resolution at tactic execution time
This commit also adds a new tactic: tactic.resolve_name

closes #1201
2016-11-24 10:55:39 -08:00
Leonardo de Moura
9d52b6607d feat(library/tactic): use annotated_head_beta_reduce instead of head_beta_reduce in tactics 2016-11-21 15:40:12 -08:00
Leonardo de Moura
e17b3df16a fix(frontends/lean/elaborator): bad error message 2016-11-21 12:18:31 -08:00
Leonardo de Moura
7232e3a076 feat(library/vm/vm): invoke debugger (aka vm_monitor) 2016-11-14 14:45:49 -08:00
Leonardo de Moura
714b780636 feat(frontends/lean/elaborator): save type info for let-exprs 2016-11-10 16:34:48 -08:00
Leonardo de Moura
d95645bd89 feat(frontends/lean/elaborator): save type information for binders 2016-11-10 15:39:38 -08:00
Sebastian Ullrich
2a37611d1f feat(emacs): implement show-goal-at-pos using faster info manager 2016-11-10 15:17:15 -08:00
Leonardo de Moura
922d48524b fix(frontends/lean): fixes #1188
This commit also adds support for recording the type of local variables
in the info_manager
2016-11-10 15:08:25 -08:00
Leonardo de Moura
40fca8efd4 feat(frontends/lean): add tactic.save_type_info, preserve pos info at translate 2016-11-10 11:51:05 -08:00
Leonardo de Moura
83e0e7104c feat(frontends/lean): save tactic_state in the info_manager 2016-11-10 09:56:36 -08:00
Leonardo de Moura
d6000416f8 feat(library/compiler,frontends/lean/elaborator): (try to) preserve position information
We will use this information in the debugger.
2016-11-09 16:51:48 -08:00
Sebastian Ullrich
b0037684d8 fix(frontends/lean/elaborator): pass info_manager to nested elaborators via thread-local variable 2016-11-08 08:37:41 -08:00
Sebastian Ullrich
bbb06dec70 fix(frontends/lean): pass around info_manager at more locations 2016-11-08 08:37:41 -08:00
Sebastian Ullrich
ba1b6165e3 feat(frontends, shell): implement basic server 'info' command 2016-11-08 08:37:41 -08:00
Sebastian Ullrich
388b337f50 chore(frontends/lean/info_manager): make copyable and integrate into snapshots 2016-11-08 08:37:41 -08:00
Leonardo de Moura
9465f25f09 feat(library/vm): profiler for VM bytecode 2016-11-03 21:15:29 -07:00
Leonardo de Moura
e358a15dd4 fix(frontends/lean/elaborator): show-goal-at-pos after last tactic
See issue #1169
2016-10-25 02:40:24 +08:00
Gabriel Ebner
5f803c0353 feat(frontends/lean/elaborator): make show-goal-at-pos work on
by-tactics
2016-10-21 15:42:29 -07:00
Gabriel Ebner
47e6fd091f refactor(frontends/lean): implement show goal function using exceptions 2016-10-21 15:42:29 -07:00
Leonardo de Moura
1185799b1f feat(frontends/lean/elaborator): more detailed error message for a^.f notation 2016-10-18 16:22:05 -07:00
Leonardo de Moura
9b84db083d fix(frontends/lean): error localization bugs 2016-10-15 13:40:57 -07:00
Leonardo de Moura
c3861c7ab3 fix(frontends/lean/elaborator): bug when creating error message 2016-10-15 13:30:26 -07:00
Leonardo de Moura
a5029ab5d2 fix(frontends/lean): improve error localization 2016-10-15 10:43:33 -07:00
Gabriel Ebner
66be9c31db refactor(library/flycheck): use flycheck_message_stream instead of option 2016-10-13 18:49:10 -07:00
Gabriel Ebner
5acb722d46 refactor(library/flycheck,library/trace): convert trace output to messages independently of flycheck 2016-10-13 18:49:10 -07:00
Gabriel Ebner
b05b514cc2 refactor(*): structured message objects 2016-10-13 18:49:10 -07:00
Gabriel Ebner
37b998ff1e feat(frontends/lean,library/flycheck): redirect all diagnostic output from commands to flycheck 2016-10-08 22:23:53 -07:00
Gabriel Ebner
996b4375a9 feat(library/flycheck,frontends/lean/elaborator): show trace messages in flycheck 2016-10-05 15:20:00 -07:00
Leonardo de Moura
d252f4ac7d feat(frontends/lean/elaborator): improve mini-lenses 2016-10-03 20:17:45 -07:00
Leonardo de Moura
16985d0de1 feat(frontends/lean/elaborator): better error message for eval_expr 2016-10-03 18:23:47 -07:00
Leonardo de Moura
7465529445 feat(library/tactic): 'eval_expr' tactic skeleton 2016-10-03 16:26:28 -07:00
Leonardo de Moura
1baa953b48 feat(frontends/lean/elaborator): improve error localization 2016-10-02 13:33:49 -07:00
Leonardo de Moura
838b3329ce fix(frontends/lean/elaborator): structure instance update with type classes 2016-10-02 11:36:22 -07:00
Leonardo de Moura
5726d45e7f fix(frontends/lean/elaborator): bad error msg 2016-09-29 15:23:20 -07:00
Leonardo de Moura
f97e238b8e feat(frontends/lean/elaborator): decorate error messages when overloads are used 2016-09-29 15:00:45 -07:00
Leonardo de Moura
f2e8b8794c feat(frontends/lean/elaborator): display error when failed to elaborate using expected type 2016-09-29 11:55:05 -07:00
Leonardo de Moura
ceeebb7e40 feat(frontends/lean/elaborator): improve error messages for eliminators 2016-09-29 11:29:59 -07:00
Leonardo de Moura
c8a720212b feat(frontends/lean): 'by' is now also using interactive mode syntax 2016-09-29 01:57:40 -07:00
Leonardo de Moura
84b45b010a feat(frontends/lean/elaborator): improve overloading support 2016-09-28 20:54:11 -07:00
Leonardo de Moura
1f07e87bc2 refactor(frontends/lean/elaborator): add first_pass_info struct 2016-09-28 20:54:10 -07:00
Leonardo de Moura
6e6609f2aa fix(frontends/lean): use coercions to sort at elaborate_type 2016-09-26 16:47:31 -07:00
Leonardo de Moura
dd8018eb04 fix(frontends/lean/elaborator): make coercion resolution more robust 2016-09-26 16:18:36 -07:00
Leonardo de Moura
b9b64b121c feat(frontends/lean/elaborator): add show-goal support (Ctrl-c-g on Emacs) 2016-09-26 11:19:08 -07:00