Leonardo de Moura
|
2d8d0d5a6c
|
feat(library/compiler): inline small functions and join points
|
2018-09-27 18:21:31 -07:00 |
|
Leonardo de Moura
|
6786b2bcc8
|
fix(library/compiler/csimp): bug at join point preservation code
|
2018-09-27 17:48:02 -07:00 |
|
Leonardo de Moura
|
c746783c0d
|
fix(frontends/lean/pp): bug when pretty printing kernel projections
|
2018-09-27 17:09:02 -07:00 |
|
Leonardo de Moura
|
bd97f67f28
|
feat(library/compiler/csimp): improve heuristic for deciding whether we should create join point or not
|
2018-09-27 16:40:57 -07:00 |
|
Leonardo de Moura
|
4dd0b4079b
|
fix(library/compiler/csimp): bug at mk_new_join_point
|
2018-09-27 16:40:57 -07:00 |
|
Sebastian Ullrich
|
2e5ea16e2f
|
perf(library/init/lean/parser): cache consecutive calls to token at the same position
Parser performance improved by about 33%
|
2018-09-27 16:08:19 -07:00 |
|
Sebastian Ullrich
|
e535cd92f7
|
perf(library/init/lean/parser/token): inline hot polymorphic functions
Decreases parser runtime by ~15%
|
2018-09-27 16:02:19 -07:00 |
|
Leonardo de Moura
|
8556365e9c
|
chore(tests/lean): remove old tests
|
2018-09-27 15:19:57 -07:00 |
|
Leonardo de Moura
|
b3451fb682
|
perf(library/init/lean/parser/parsec): merge ok and ok_eps
|
2018-09-27 15:14:37 -07:00 |
|
Leonardo de Moura
|
20e98cbcff
|
feat(library/compiler/csimp): remove bad join-point creation
|
2018-09-27 14:56:09 -07:00 |
|
Leonardo de Moura
|
64b5e05a3e
|
feat(library/init/lean/parser/parsec): try to minimize the amount of inlined code
|
2018-09-27 14:53:30 -07:00 |
|
Leonardo de Moura
|
dd50cc1785
|
feat(library/init/lean/parser/parsec): add orelse_cont to improve compilation time
|
2018-09-27 13:22:18 -07:00 |
|
Leonardo de Moura
|
d880b1c640
|
feat(library/compiler): add is_float_cases_on_worthwhile predicate and cleanup
|
2018-09-27 13:12:20 -07:00 |
|
Leonardo de Moura
|
78de3de764
|
chore(script/lib_perf): adapt to change in lean command line behavior
|
2018-09-27 13:11:42 -07:00 |
|
Leonardo de Moura
|
7a5d0dd65b
|
fix(library/num): to_num should support the new nat literals supported in the kernel
|
2018-09-27 11:13:50 -07:00 |
|
Sebastian Ullrich
|
26c0f36848
|
doc(library/init/lean/parser/basic): expand comment
|
2018-09-27 10:16:40 -07:00 |
|
Sebastian Ullrich
|
e661aaeacf
|
refactor(library/init/lean/parser): store registered parsers in configs, use config hierarchy to avoid mutually recursive types
And other refactorings along the way
|
2018-09-27 10:05:10 -07:00 |
|
Leonardo de Moura
|
2c2103711c
|
feat(library/compiler/csimp): we may be able to unfold join point
|
2018-09-26 18:01:57 -07:00 |
|
Leonardo de Moura
|
ccd73701cb
|
feat(library/compiler/csimp): preserve joint points
|
2018-09-26 17:54:11 -07:00 |
|
Leonardo de Moura
|
ae81ac2768
|
chore(frontends/lean): remove parameter command from old parser
We still have a lot of leftover code, but it is not worth removing it
since we will delete the old parser.
|
2018-09-26 17:54:11 -07:00 |
|
Leonardo de Moura
|
7f64033111
|
chore(library/init): remove all occurrences of parameter command
We will not support the `parameter` command in Lean 4.
It is seldom used and creates many complications.
|
2018-09-26 17:54:11 -07:00 |
|
Leonardo de Moura
|
f3552f70f6
|
feat(library/compiler/csimp): simplify code
|
2018-09-26 17:54:10 -07:00 |
|
Leonardo de Moura
|
e7b99d5a07
|
fix(library/compiler/csimp): bug at split_entries
|
2018-09-26 17:54:10 -07:00 |
|
Leonardo de Moura
|
6578b2b6ce
|
chore(library/compiler/csimp): cleanup
|
2018-09-26 17:54:10 -07:00 |
|
Leonardo de Moura
|
33322d44ee
|
chore(library/compiler/csimp): remove dead code
|
2018-09-26 13:46:27 -07:00 |
|
Sebastian Ullrich
|
2c07922327
|
refactor(library/init/lean/parser): minimize parser_state, have the module coroutine take and return parser_config
|
2018-09-26 13:20:07 -07:00 |
|
Sebastian Ullrich
|
07901fcfcb
|
refactor(library/init/lean/parser/module): put prelude and imports into non-optional header parser to make the life of the elaborator and other consumers a bit easier
|
2018-09-26 13:20:07 -07:00 |
|
Leonardo de Moura
|
938c8dae83
|
fix(library/init/control/combinators): [inline] ==> [macro_inline]
|
2018-09-26 09:08:06 -07:00 |
|
Leonardo de Moura
|
b324aa4b33
|
feat(library/compiler/csimp): do not inline partial applications
|
2018-09-26 09:05:28 -07:00 |
|
Leonardo de Moura
|
21b8199bc4
|
feat(library/compiler/util): do not consider constructors to be cost zero
|
2018-09-26 08:48:06 -07:00 |
|
Leonardo de Moura
|
7fed0b5cb0
|
fix(library/compiler/csimp): bug in the join point generation
|
2018-09-26 08:47:49 -07:00 |
|
Leonardo de Moura
|
15222a79a0
|
chore(library/compiler/csimp): display "code size"
|
2018-09-25 19:34:29 -07:00 |
|
Leonardo de Moura
|
25780c6daf
|
fix(library/compiler/csimp): never create join points for floating cases from application
|
2018-09-25 19:34:29 -07:00 |
|
Leonardo de Moura
|
32888b45a8
|
chore(library/compiler/csimp): remove leftover
|
2018-09-25 19:34:29 -07:00 |
|
Leonardo de Moura
|
8613255ff2
|
chore(library/compiler/csimp): add comment
|
2018-09-25 19:34:29 -07:00 |
|
Leonardo de Moura
|
6b6b6eb96f
|
feat(library/compiler/csimp): improve float_cases_on
|
2018-09-25 19:34:29 -07:00 |
|
Leonardo de Moura
|
c9cb576c9b
|
feat(library/compiler/csimp): float cases from application when visiting application
|
2018-09-25 19:34:29 -07:00 |
|
Leonardo de Moura
|
dc4ba760b8
|
fix(library/compiler/csimp): bug at float_cases_on
|
2018-09-25 19:34:29 -07:00 |
|
Leonardo de Moura
|
06e78b0e48
|
feat(library/compiler/csimp): create join points for float_cases_on
|
2018-09-25 19:34:29 -07:00 |
|
Sebastian Ullrich
|
377e256cc0
|
test(tests/lean/parser1): simple macro test
|
2018-09-25 18:37:43 -07:00 |
|
Sebastian Ullrich
|
1d01e81de8
|
refactor(library/init/lean/parser): do not construct final syntax tree independent from intermediate outputs
This makes sure we have a single consistent view of the file
|
2018-09-25 18:28:53 -07:00 |
|
Sebastian Ullrich
|
18cf4d50bb
|
chore(frontends/lean/elaborator): ignore error caused by synthetic sorry
|
2018-09-25 16:48:01 -07:00 |
|
Sebastian Ullrich
|
90984a63e8
|
chore(frontends/lean/elaborator): improve application error positions
|
2018-09-25 16:08:57 -07:00 |
|
Sebastian Ullrich
|
f8dd94c4bf
|
feat(library/init/lean/expander): full mixfix and reserve_mixfix expanders
|
2018-09-25 15:05:47 -07:00 |
|
Sebastian Ullrich
|
11259b62d2
|
chore(frontends/lean/elaborator): try to make error positions a bit more accurate
|
2018-09-25 14:48:57 -07:00 |
|
Sebastian Ullrich
|
bba8beca63
|
feat(library/init/lean/parser/token): give number a view
|
2018-09-25 14:18:52 -07:00 |
|
Sebastian Ullrich
|
d8b49e1dee
|
feat(library/init/control/functor): add <&>, which the old elaborator likes better than <$>
|
2018-09-25 13:23:56 -07:00 |
|
Sebastian Ullrich
|
ac7b70c555
|
fix(frontends/lean/token_table): add missing built-in token
`::` is used not only by `list` but also the built-in `structure` command
|
2018-09-25 12:20:08 -07:00 |
|
Sebastian Ullrich
|
95c469f8c4
|
fix(library/module_mgr,shell/lean): catch all errors from parsing
|
2018-09-25 12:14:03 -07:00 |
|
Sebastian Ullrich
|
2d69d85193
|
fix(library/init/lean/expander): fix mixfix.transform
|
2018-09-25 11:56:40 -07:00 |
|