Leonardo de Moura
f9d7480f5c
feat(frontends/lean): notation for creating structure instances
2015-01-16 17:14:30 -08:00
Leonardo de Moura
bfd679d52d
feat(frontends/lean/structure_cmd): allow user to reference parent structures when defining new fields
...
See new test for an example.
closes #371
2015-01-16 13:04:48 -08:00
Leonardo de Moura
13660cfecd
feat(frontends/lean/parser): add parse_qualified_expr
2015-01-16 12:42:42 -08:00
Leonardo de Moura
6c07ca5d41
perf(library/print): improve is_used_name
2015-01-15 19:01:13 -08:00
Leonardo de Moura
c6290f01d0
perf(kernel/free_vars): improve has_free_var
2015-01-15 18:42:56 -08:00
Leonardo de Moura
f397da111a
perf(kernel/error_msgs): avoid unnecessary work
2015-01-15 18:32:52 -08:00
Leonardo de Moura
ce0b1d17a2
perf(kernel/free_vars): improve has_free_var
2015-01-15 18:31:43 -08:00
Leonardo de Moura
ddcc8de09e
fix(shell/lean): catch errors when loading bad cache file
2015-01-15 18:06:22 -08:00
Leonardo de Moura
30817aa2b1
feat(emacs): allow user to provide extra commands to lean-server
2015-01-15 16:54:55 -08:00
Leonardo de Moura
907f90096e
feat(kernel): add memory consumption checks at replace_fn and for_each_fn
2015-01-15 16:54:55 -08:00
Leonardo de Moura
8ab775bd6f
feat(*): distinguish between logical and runtime exceptions.
...
Now, we use throwable as the new base class for all Lean exceptions, and
exception is the subclass for "logical" exceptions.
2015-01-15 16:54:55 -08:00
Leonardo de Moura
3a865e95fe
feat(shell/lean): add option '-M' to limit amount of memory consumed
2015-01-15 16:54:55 -08:00
Leonardo de Moura
5c9a277dea
feat(CMakeLists): include runtime files in Windows binary distribution package
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2015-01-14 12:37:25 -08:00
Leonardo de Moura
730e038dd3
feat(CMakeLists): add basic example to binary distribution package
2015-01-14 10:39:07 -08:00
Leonardo de Moura
0509baa64a
feat(CMakeLists): add README file for binary distribution packages
2015-01-14 10:35:51 -08:00
Leonardo de Moura
ee98523c2a
feat(shell/lean): add option '-T' alias for '-t 1025'
2015-01-14 10:21:57 -08:00
Leonardo de Moura
3813aeede5
fix(util/lean_path): relative position of library files in binary
...
distribution packages
2015-01-14 10:14:17 -08:00
Leonardo de Moura
c9132648a2
feat(CMakeLists): include HoTT library in binary package
2015-01-14 10:00:35 -08:00
Leonardo de Moura
ef529c660f
fix(library/definitional/no_confusion): mark no_confusion as reducible
...
Auxiliary definitions should be marked as reducible
2015-01-13 18:44:47 -08:00
Leonardo de Moura
e48df78938
feat(frontends/lean/elaborator): do not apply delayed_coercions on equation lhs
...
The variables in the equation lhs do not have type at preprocessing
time (i.e., their type is a metavariable). So, they may seem candidates
for delayed_coercions. If the coercions are injected, we will not be
able to pattern match. Thus, we disable coercions in this case.
2015-01-13 18:05:22 -08:00
Leonardo de Moura
37e852ba61
feat(frontends/lean/elaborator): improve error message for metavariable in inaccessible position on equation lhs
2015-01-13 14:38:25 -08:00
Leonardo de Moura
e9338669dc
feat(library/definitional/equations): show implicit arguments (by default) in equations compiler error messages
2015-01-13 13:30:12 -08:00
Leonardo de Moura
41935906a8
chore(frontends/lean): use update_if_undef
2015-01-13 13:02:14 -08:00
Leonardo de Moura
e5a8c67d22
fix(library/definitional/equations): assertion violation
2015-01-13 11:57:14 -08:00
Leonardo de Moura
1fbfe59a9a
feat(library/tactic/goal): when listing context/goal variables, collect vars of same type in one line
...
closes #391
2015-01-13 11:14:44 -08:00
Leonardo de Moura
4f519be55e
fix(frontends/lean/elaborator): compilation problem
2015-01-11 20:58:41 -08:00
Leonardo de Moura
75d7e4ab9e
feat(frontends/lean): add 'end' token to match expressions
2015-01-10 12:35:29 -08:00
Leonardo de Moura
5796640392
fix(frontends/lean): do report unassigned metavariables in equation lhs
2015-01-10 10:39:47 -08:00
Leonardo de Moura
b172229a72
feat(frontends/lean): add 'match' expressions
...
We reuse the equations infrastructure to compile them.
2015-01-10 10:11:13 -08:00
Leonardo de Moura
6df9ffe5f6
fix(frontends/lean/elaborator): solve placeholders before invoking equantions compiler
2015-01-10 09:18:27 -08:00
Leonardo de Moura
a3bc1b0cd5
fix(library/definitional/equations): add more equation validation to avoid obscure error message
2015-01-09 18:52:21 -08:00
Leonardo de Moura
2e4a2451e6
refactor(library/reducible): simplify reducible/irreducible semantics
2015-01-08 18:52:18 -08:00
Leonardo de Moura
698754b2bb
feat(library/definitional/equations): display elaborated equation lhs's when there are missing cases
2015-01-08 12:00:47 -08:00
Leonardo de Moura
4fef19230d
feat(util/sexpr/options): add update_if_undef method
2015-01-08 11:55:30 -08:00
Leonardo de Moura
f344dd75c4
feat(library/pp_options): add get_pp_purify_locals_name
2015-01-08 11:55:08 -08:00
Leonardo de Moura
87d41e90fc
fix(frontends/lean/decl_cmds): store equations positions
2015-01-07 18:50:56 -08:00
Leonardo de Moura
5c118127ae
fix(library/definitional/equations): memory access violation
2015-01-07 17:06:41 -08:00
Leonardo de Moura
597f7385e8
fix(library/unifier): incorrect fix
2015-01-07 16:57:02 -08:00
Leonardo de Moura
15b5344626
feat(library/definitional/equations): copy tags
2015-01-07 14:00:46 -08:00
Leonardo de Moura
2990a6d029
fix(library/unifier): missing "set_conflict" in process_delta
2015-01-07 12:41:01 -08:00
Leonardo de Moura
a9b6e20a22
fix(frontends/lean): save equations position
2015-01-06 15:55:04 -08:00
Leonardo de Moura
760dc2162a
chore(library/definitional/equations): cleanup
2015-01-06 14:53:21 -08:00
Leonardo de Moura
a3a6697f44
feat(library/definitional/equations): mutually recursive functions for mutually recursive datatypes
2015-01-06 14:07:17 -08:00
Leonardo de Moura
559ee3e3e1
fix(util/buffer): bug in expand method
...
fixes #385
2015-01-06 11:42:40 -08:00
Leonardo de Moura
5f182dc1cc
fix(util/lean_path): memory leak
2015-01-06 10:22:45 -08:00
Leonardo de Moura
c33928f202
fix(library/pp_options): memory leak
2015-01-06 10:22:23 -08:00
Leonardo de Moura
828ce3f8dc
feat(frontends/lean/decl_cmds): minor modifications for supporting mutually recursive functions
2015-01-05 19:23:50 -08:00
Leonardo de Moura
322cdb8a98
feat(library/definitional/equations): add 'equations_result' macro used to wrap multiple functions being defined by recursive equations
...
This is only useful when compiling "mutually recursive" functions.
2015-01-05 19:09:20 -08:00
Leonardo de Moura
3325d791de
fix(library/definitional/equations): bug in recursive application elimination
2015-01-05 17:17:14 -08:00
Leonardo de Moura
eedc31f7e9
fix(library/definitional/equations): bug in "complete" transition
2015-01-05 16:27:29 -08:00