Commit graph

2124 commits

Author SHA1 Message Date
Leonardo de Moura
7c535a53d6 chore(*): fix warnings messages 2016-09-04 09:20:19 -07:00
Leonardo de Moura
a74f02546b refactor(*): remove abbreviation command 2016-09-03 17:11:29 -07:00
Leonardo de Moura
3bc5cf8d0e feat(frontends/lean/elaborator): improve error message 2016-09-03 13:21:54 -07:00
Leonardo de Moura
0afef31be6 feat(library/tactic/defeq_simplifier): reimplement defeq simp lemma cache 2016-09-02 09:10:09 -07:00
Leonardo de Moura
02316c39b8 feat(frontends/lean/elaborator): throw an error if a local instance is declared in the middle of a declaration 2016-09-01 18:06:38 -07:00
Leonardo de Moura
0ec22bb2cf refactor(library/type_context): new type class instance cache 2016-09-01 17:37:30 -07:00
Leonardo de Moura
e061e9acab refactor(frontends/lean/elaborator): remove elaborator::ctx()
The plan is to make `type_context` a transient object in the elaborator.
2016-09-01 08:28:30 -07:00
Leonardo de Moura
381f2dc434 chore(frontends/lean/elaborator): simplify mk_pp_ctx 2016-09-01 08:15:36 -07:00
Leonardo de Moura
2fc0e5fa05 feat(library/equations_compiler/structural_rec): add aux definition 2016-08-30 18:33:24 -07:00
Leonardo de Moura
001991dbeb feat(frontends/lean): use equations_header 2016-08-30 13:45:59 -07:00
Leonardo de Moura
bd99de9bf8 fix(frontends/lean/pp): remove unnecessary parenthesis when pretty printing (A -> (Pi (b : B), C b)) 2016-08-29 16:36:04 -07:00
Leonardo de Moura
16a99436b4 fix(frontends/lean/elaborator): make sure all inductive datatype parameters in constructor applications are marked as inaccessible 2016-08-28 07:58:18 -07:00
Leonardo de Moura
b37b4f3dc8 fix(frontends/lean/elaborator): implicit terms are marked as inaccessible in patterns 2016-08-28 07:58:06 -07:00
Leonardo de Moura
ae63821cdb fix(frontends/lean/elaborator): reject inaccessible annotation inside inaccessible annotation 2016-08-28 07:57:44 -07:00
Leonardo de Moura
7b37762231 fix(frontends/lean/elaborator): make sure elaborated term is based on what the user wrote 2016-08-28 07:57:34 -07:00
Leonardo de Moura
3cfd0f435a fix(frontends/lean/definition_cmds): make sure rec-functions have the ref_info flag turned on 2016-08-28 07:56:45 -07:00
Leonardo de Moura
7851b9c097 fix(frontends/lean/definition_cmds): parameter handling 2016-08-23 21:13:54 -07:00
Leonardo de Moura
55bd3e223e feat(library/type_context): add set_env 2016-08-23 18:32:58 -07:00
Leonardo de Moura
a93eada058 feat(library/type_context): improved (and simplified) cache management for type_context 2016-08-23 17:56:58 -07:00
Leonardo de Moura
6aa11be6fd fix(frontends/lean/inductive_cmds): memory leak 2016-08-23 15:36:46 -07:00
Sebastian Ullrich
cee5bfd983 feat(frontends/lean/decl_attributes): disallow persistent attribute removal 2016-08-23 14:09:35 -07:00
Sebastian Ullrich
abd040589f feat(frontends/lean/decl_attributes, library/attribute_manager): implement attribute removal 2016-08-23 14:09:35 -07:00
Leonardo de Moura
e18500dcd4 feat(frontends/lean/parser): _ is an anonymous variable again in patterns. 2016-08-23 14:06:24 -07:00
Leonardo de Moura
f4fd0ca775 fix(frontends/lean/definition_cmds): empty set of equations 2016-08-22 13:30:37 -07:00
Leonardo de Moura
803c956d18 feat(util/sexpr/option_declarations): allow options to be registered after initialization 2016-08-19 16:58:30 -07:00
Sebastian Ullrich
60fa25b665 refactor(library/attribute_manager): remove weakly-typed API
Also reduces number of attribute name literals
2016-08-19 15:02:34 -07:00
Leonardo de Moura
7e4f15b0d8 feat(frontends/lean/elaborator): more inaccessible term validation 2016-08-19 14:52:11 -07:00
Leonardo de Moura
e99eb6d47e feat(frontends/lean): revising inaccessible terms syntax again :( 2016-08-19 13:57:12 -07:00
Leonardo de Moura
50c147cd0e feat(frontends/lean/parser): allow string literals in patterns 2016-08-18 21:00:27 -07:00
Leonardo de Moura
20276f9b93 feat(frontends/lean/pp): pretty print character literals 2016-08-18 17:14:50 -07:00
Leonardo de Moura
7a0158dcab fix(frontends/lean/elaborator): must take (updated) configuration options into account 2016-08-18 15:47:49 -07:00
Leonardo de Moura
e6212469f0 feat(library/type_context): add helper functions for pretty printing 2016-08-18 15:36:01 -07:00
Leonardo de Moura
160632564d fix(frontends/lean/elaborator): prevent unintended copy of type_context 2016-08-18 14:31:18 -07:00
Sebastian Ullrich
ca8be3857c feat(library/user_attribute): add user-defined attributes and make attribute_manager environment-aware 2016-08-18 12:56:44 -07:00
Leonardo de Moura
cd77f7167e chore(frontends/lean): run_tactic ==> run_command
add `command` as alias for `tactic unit`
2016-08-18 12:53:21 -07:00
Leonardo de Moura
ddc3789929 feat(frontends/lean): add run_tactic command
This commit also adds the tactic `add_decl`.
2016-08-18 10:56:18 -07:00
Leonardo de Moura
423319398d fix(frontends/lean/structure_cmd): compilation warning 2016-08-17 15:42:20 -07:00
Leonardo de Moura
93d48ae620 feat(frontends/lean/parser): revised pattern validation 2016-08-17 15:42:13 -07:00
Leonardo de Moura
48786b6afe feat(frontends/lean/decl_cmds): register attributes after bytecode has been generated 2016-08-17 08:46:26 -07:00
Daniel Selsam
a9b01991c2 feat(frontends/lean/inductive_cmd): new frontend for the inductive cmd
Conflicts:
	src/frontends/lean/CMakeLists.txt
	src/frontends/lean/structure_cmd.h
2016-08-17 07:34:03 -07:00
Leonardo de Moura
4e0a30d21e chore(frontends/lean/structure_cmd): remove unnecessary dependency 2016-08-16 14:58:13 -07:00
Leonardo de Moura
e384b5c5f9 refactor(frontends/lean): move structure_instance to separate module 2016-08-16 14:56:09 -07:00
Sebastian Ullrich
e548a6311e chore(frontends/lean/print_cmd): change attribute output to new syntax 2016-08-16 13:49:03 -07:00
Sebastian Ullrich
a2659cdaa5 feat(frontends/lean/decl_attributes): add [attr1, attr2] syntax 2016-08-16 13:49:03 -07:00
Sebastian Ullrich
cb6a6b642e refactor(library/attribute_manager): remove attribute tokens and use name for attribute names 2016-08-16 13:49:03 -07:00
Sebastian Ullrich
751f2d8b02 refactor(frontends/lean): delegate all attribute parsing to decl_attributes 2016-08-16 13:49:03 -07:00
Sebastian Ullrich
e15e085126 refactor(frontends/lean/old_attributes, library/tactic/backward/backward_lemmas): merge [intro] and [intro!] attributes 2016-08-16 13:49:03 -07:00
Sebastian Ullrich
34e00cd5a2 refactor(library/attribute_manger): simplify: make every attribute prioritizable 2016-08-16 13:49:02 -07:00
Leonardo de Moura
b0abea78b6 fix(frontends/lean/pp): bug when pretty printing foldr/foldl notation 2016-08-16 10:34:04 -07:00
Leonardo de Moura
100a15cb0d feat(frontends/lean/pp): pretty print equations macro 2016-08-16 10:00:53 -07:00