Commit graph

2117 commits

Author SHA1 Message Date
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
Leonardo de Moura
7059609f57 feat(library/equations_compiler): equations_compiler stub, add helper equations_editor, add preprocessing
The first preprocessing step packs nary functions into unary using sigma types
2016-08-14 17:02:36 -07:00
Leonardo de Moura
5a0f3ca320 fix(frontends/lean/definition_cmds): user must provide implicit arguments or the function being defined 2016-08-13 22:17:06 -07:00
Leonardo de Moura
323701bef1 feat(frontends/lean/parser): simplify pattern semantics '_' in a pattern is always a anonymous variable 2016-08-13 22:14:40 -07:00
Leonardo de Moura
ed2a63ae89 feat(frontends/lean/elaborator): elaborate equations 2016-08-13 21:37:25 -07:00
Leonardo de Moura
150ad5d292 feat(frontends/lean/elaborator): elaborate convoy idiom 2016-08-13 20:51:42 -07:00
Leonardo de Moura
f7f564a00a feat(frontends/lean/definition_cmds): postprocessing for parameters 2016-08-13 17:41:05 -07:00
Leonardo de Moura
8ff2876074 fix(frontends/lean/definition_cmds): collect implicit args in the type 2016-08-13 16:54:17 -07:00
Leonardo de Moura
2de3d40910 feat(frontends/lean/definition_cmds): invoke compiler 2016-08-13 16:45:32 -07:00
Leonardo de Moura
0312b84273 feat(frontends/lean/definition_cmds): check noncomputable annotation 2016-08-13 16:33:02 -07:00
Leonardo de Moura
940382c3bc feat(frontends/lean/definition_cmds): add support for 'sorry' 2016-08-13 16:25:29 -07:00
Leonardo de Moura
9e3bf4bd8d fix(frontends/lean/elaborator): improve error message for eliminator elaborator 2016-08-13 15:43:44 -07:00
Leonardo de Moura
7d9cf74007 feat(frontends/lean/definition_cmds): basic xdefinition_cmd_core 2016-08-13 15:08:32 -07:00
Leonardo de Moura
cc5a59a61b feat(frontends/lean/decl_util): do not add constant being defined to scope
It should only be added if recursive equations are being used or
in inductive datatype declarations.
2016-08-13 13:34:11 -07:00
Leonardo de Moura
527ce72d2f feat(frontends/lean/elaborator): add elaborate_with_type 2016-08-13 13:33:37 -07:00
Leonardo de Moura
24bc999c77 feat(frontends/lean): add mutual_meta_definition 2016-08-12 20:00:10 -07:00
Sebastian Ullrich
f0b3bd3c85 chore(frontends/lean/decl_cmds): disable old attribute declaration syntax 2016-08-12 15:36:12 -07:00
Sebastian Ullrich
47e104311c feat(frontentds/lean/decl_attributes): implement attribute [...] definition ... syntax 2016-08-12 15:36:12 -07:00
Sebastian Ullrich
b27ba6288d feat(frontends/lean/print_cmd): implement 'print attributes' 2016-08-12 15:36:12 -07:00
Sebastian Ullrich
e0e8a3aff2 refactor(library/abbreviation): make parsing_only a real attribute 2016-08-12 15:36:12 -07:00
Leonardo de Moura
a641f9dfc0 feat(frontends/lean): add new definition command skeleton 2016-08-11 14:38:35 -07:00
Daniel Selsam
8aebea558a feat(frontends/lean/inductive_cmds): scaffold for new inductive commands 2016-08-11 13:48:54 -07:00
Leonardo de Moura
80b6bb47f8 feat(frontends/lean): parse mutual_definition 2016-08-11 13:47:52 -07:00
Leonardo de Moura
09459c0d84 refactor(library/equations_compiler): isolate old equations compiler 2016-08-11 10:08:30 -07:00
Leonardo de Moura
fc4e304b27 refactor(library): move equations to equations_compiler 2016-08-11 10:08:30 -07:00
Leonardo de Moura
f056f0f2cb refactor(library): definitional ==> constructions 2016-08-11 10:08:22 -07:00
Leonardo de Moura
fd0b593fba feat(frontends/lean): add definition_cmds files 2016-08-11 09:40:24 -07:00
Leonardo de Moura
11043bc888 chore(frontends/lean/builtin_cmds): remove dead code 2016-08-11 08:38:39 -07:00