Sebastian Ullrich
d9208e2b8b
feat(library/vm/vm): add profiler.perf_script_file option
...
sample usage:
$ lean -Dprofiler.perf_script_file=parser1.script parser1.lean
$ gprof2dot -f perf < parser1.script > parser1.dot
2018-10-22 15:01:49 +02:00
Leonardo de Moura
5d726eb210
feat(library/compiler/compiler): switch to new compiler frontend
...
We also rename `vm_compiler` module to `emit_bytecode`.
We will eventually replace this module with the new IR emitter.
2018-10-08 17:38:17 -07:00
Leonardo de Moura
990fbe3c30
feat(library/compiler): provide options to vm_compile
2018-09-30 08:50:40 -07:00
Leonardo de Moura
fabfe32ca5
chore(*): remove unnecessary scoped_ext dependencies
2018-09-08 15:42:48 -07:00
Leonardo de Moura
49b5216604
chore(library): remove fingerprint
2018-09-07 12:54:19 -07:00
Leonardo de Moura
2315bc4653
chore(library): remove documentation environment extension
2018-09-07 12:09:41 -07:00
Leonardo de Moura
5d00936a8f
chore(*): remove some old_type_checker dependencies
2018-09-07 08:48:21 -07:00
Leonardo de Moura
130b419371
chore(frontends/lean): remove break_at_pos support
...
We have already removed auto-completion support.
This change allowed me to remove another old_type_checker dependency.
2018-09-07 08:34:19 -07:00
Leonardo de Moura
8ed89c6ac3
chore(library): remove normalize.cpp
...
The command `#reduce` was also temporarily removed.
2018-09-04 10:51:14 -07:00
Leonardo de Moura
dd03747d22
chore(kernel): univ_param vs lparam, level_param_names ==> names, and other inconsistencies
2018-09-03 13:05:42 -07:00
Sebastian Ullrich
39cdae50ee
feat(library,frontends/lean): use mdata instead of hacky cache for position information in preterms
2018-09-02 18:08:41 -07:00
Leonardo de Moura
101886ffae
feat(kernel): proper constant_info and declaration objects for quot type
2018-08-28 13:46:31 -07:00
Leonardo de Moura
7bf032d6fe
chore(frontends/lean): remove calc-expression
2018-08-27 12:20:54 -07:00
Leonardo de Moura
d27ef3d3b0
chore(frontends/lean/builtin_cmds): remove tactic framework dependency
2018-08-23 13:34:38 -07:00
Leonardo de Moura
82095cc018
refactor(kernel): split declaration into declaration and constant_info
...
This is just another step towards the design described at commit 16598391a07d4a
2018-08-22 17:53:11 -07:00
Sebastian Ullrich
6384d118a8
fix(frontends/lean/builtin_cmds,library/vm/vm): fix debug build
2018-08-22 14:32:03 -07:00
Leonardo de Moura
6473bd1294
chore(frontends/lean/builtin_cmds): fix warning
2018-08-21 10:09:39 -07:00
Sebastian Ullrich
0936d4d81e
feat(library/init/io): introduce has_eval class to customize #eval output
2018-08-21 08:43:09 -07:00
Leonardo de Moura
fd9bc9e15b
feat(frontends/lean/builtin_cmds): write/read compacted region file
2018-08-20 16:35:37 -07:00
Leonardo de Moura
8944cb6951
fix(frontends/lean/builtin_cmds): do not include time spent copying memory
...
We will read the data from the disk and give it directly to the
compacted_region object
2018-08-20 15:49:54 -07:00
Leonardo de Moura
c75fb04322
feat(frontends/lean/builtin_cmds): add option for increasing the number of copies being compacted/serialized
2018-08-20 15:21:21 -07:00
Leonardo de Moura
b8e4e94c91
feat(frontends/lean): add command for testing compacted regions
2018-08-20 14:39:15 -07:00
Leonardo de Moura
e9f843ddf6
refactor(kernel/expr): remove mlocal_* functions
...
The constructors `mvar` and `fvar` have different memory layouts.
2018-06-22 14:25:31 -07:00
Leonardo de Moura
c0e1d05199
chore(kernel): type_checker ==> old_type_checker
2018-06-06 16:10:40 -07:00
Leonardo de Moura
ac0352b584
refactor(kernel): remove quotitent normalizer extension
...
The `quot` type is now implemented in the kernel.
We will do the same thing for inductives.
We will not support normalizer extensions anymore in Lean4.
It doesn't make sense since we settled with 2 extensions: quotients and
inductives. Moreover, any new extension would require substantial
changes (e.g., code generator).
The normalizer_extension feature was useful when we were experimenting
with different kernel flavors.
2018-06-01 10:52:17 -07:00
Leonardo de Moura
0947abaee4
chore(frontends/lean): remove broken declare_trace command
...
This command is broken, and we will have a new tracing infrastructure in Lean4.
2018-05-31 09:02:25 -07:00
Leonardo de Moura
d3272ca1c5
refactor(frontends/lean,library/tactic/kabstract): remove add_key_equivalence command
...
This command was never used in the Lean3 corelib and mathlib.
It is safe to assume it is not needed.
2018-05-30 14:10:03 -07:00
Leonardo de Moura
0556412f8d
refactor(*): add runtime folder
...
@kha The runtime folder includes what is needed to link a
standalone Lean program. It is still contains some unnecessary files.
We will be able to remove them after we release Lean4.
2018-05-14 14:23:56 -07:00
Leonardo de Moura
c08a3bc557
refactor(library/typed_expr): move typed_expr to frontends/lean
2018-04-09 15:25:40 -07:00
Leonardo de Moura
8dd53cd94f
chore(*): rename expr_struct_* to expr_*
...
We don't need to modifier `_struct` anymore since we don't use the
pointer equality based hashtables anymore.
2018-04-09 12:55:48 -07:00
Leonardo de Moura
faf8e025e7
chore(kernel): remove m_hash_alloc field from expressions
...
This field was originally added to create hashtables based on pointer
equality. We don't use them anymore, and the caches based on
m_hash_alloc can be implemented using m_hash without any performance
impact. This commit also fixes two places where `expr_set` was used
instead of `expr_struct_set`.
This commit is also important for the Lean4 plans where `expr` will
be implemented in Lean, and fields like `m_hash_alloc` would require us
to track state.
2018-04-09 10:05:56 -07:00
Leonardo de Moura
bdea7d420d
chore(*): type_context ==> type_context_old
2018-03-05 12:38:24 -08:00
Leonardo de Moura
3895fd8511
chore(library): use type_context to update metavar_context
2018-02-27 12:23:26 -08:00
Leonardo de Moura
0ad5497462
refactor(library/io): make io easier to extend and use
2018-01-23 15:03:31 -08:00
Leonardo de Moura
60be2bf2aa
feat(frontends/lean/builtin_cmds): use type_context to implement #reduce command
2018-01-09 16:42:52 -08:00
Sebastian Ullrich
a36376a6cf
fix(frontends/lean/builtin_cmds): #eval: set message caption
2017-12-22 11:04:46 +01:00
Leonardo de Moura
6c44dd1b7f
feat(frontends/lean): add hide command
...
cc: @kha
2017-12-13 11:53:21 -08:00
Leonardo de Moura
426a9064bf
feat(frontends/lean/builtin_cmds): display warning message if has_repr instance could not be synthesized
...
See issue #1861
2017-11-06 19:26:18 -08:00
Leonardo de Moura
d428eca8a7
fix(library/equations_compiler,frontends/lean): private name support and alias generation for auxialiary declarations
...
fixes #1804
Remark: now, all auxiliary definitions in a private declaration share
the same "private" prefix.
2017-09-11 16:46:56 -07:00
Leonardo de Moura
dc1a1c8540
refactor(library): has_to_string ==> has_repr
...
See issue #1664
This is just the first step to implement proposal described at issue #1664 .
2017-06-18 18:29:19 -07:00
Leonardo de Moura
bf0d785888
feat(library/messages, frontends/lean): optional end position for messages
...
We need this information to be able to fix issues with the transient
message boxes feature (#1667 ).
2017-06-15 10:47:58 -07:00
Sebastian Ullrich
f820f3f97e
fix(frontends/lean/builtin_cmds): abort eval after error recovery and complain about unsynthesized mvars early
2017-05-31 16:05:47 +02:00
Leonardo de Moura
62c24f9bb5
chore(*): remove pos_num and num from stdlib
2017-05-25 18:24:16 -07:00
Leonardo de Moura
4fbb65d9f1
feat(frontends/lean,library/equations_compiler): store tactics for generating well founded relation and decreasing proofs
2017-05-23 15:00:29 -07:00
Gabriel Ebner
95300224aa
fix(frontends/lean/builtin_cmds): suppress unhelpful #check output
2017-05-23 11:14:31 -07:00
Gabriel Ebner
183bf63e26
fix(frontends/lean/parser): pass error-recovery flag from parser to elaborator
2017-05-23 11:14:31 -07:00
Sebastian Ullrich
6ab0a008f9
feat(frontends/lean/{builtin_cmds,interactive}): complete namespace/section after end
2017-04-23 11:26:31 -07:00
Gabriel Ebner
489b3304bd
fix(frontends/lean/parser): allow enabling profiler via set_option
2017-04-23 11:22:50 -07:00
Gabriel Ebner
9424e6fa24
refactor(frontends/lean/definition_cmds): make profiling threshold configurable
2017-04-23 11:22:41 -07:00
Gabriel Ebner
e2fa363423
feat(library/system/io,shell/lean): add --run switch
2017-04-11 16:41:30 -07:00