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
Sebastian Ullrich
c3c6a0e3a5
chore(library/init/lean/expander): minor simplifications
2018-09-25 09:18:56 -07:00
Sebastian Ullrich
4afcc0aab0
fix(library/init/lean/parser/term): do not allow mixing bracketed and unbracketed binders
2018-09-25 09:16:02 -07:00
Sebastian Ullrich
15927f21c9
refactor(library/init/lean/parser/token): unicode_symbol parser
2018-09-25 09:16:02 -07:00
Sebastian Ullrich
5a21d45836
refactor(library/init/lean/expander): introduce some coercions
2018-09-25 09:16:02 -07:00
Leonardo de Moura
b4b42ef8b2
feat(library/init/lean/parser/parsec): missing [inline]
2018-09-24 18:57:49 -07:00
Leonardo de Moura
1f42b5bce9
feat(library/compiler/preprocess): missing trace option
2018-09-24 18:47:10 -07:00
Leonardo de Moura
c827892715
fix(library/compiler/cse): adjust to new LCNF
2018-09-24 18:47:10 -07:00
Leonardo de Moura
6a7fbb24f5
feat(library/init/data/dlist): inlining dlist functions is counterproductive
2018-09-24 18:47:10 -07:00
Sebastian Ullrich
f29a866cb4
perf(frontends/lean/elaborator): do not inline views for now
2018-09-24 18:24:27 -07:00
Sebastian Ullrich
32f4d52e1c
refactor(library/init/lean): revert introduction of tysyntax; push syntax.missing through views
2018-09-24 18:24:27 -07:00
Sebastian Ullrich
aac3627ce1
fix(frontends/lean/elaborator): restore better field notation error message
2018-09-24 18:24:27 -07:00
Leonardo de Moura
017261960c
feat(library/compiler/csimp): add float_cases_on
2018-09-24 18:10:26 -07:00
Leonardo de Moura
ee43d4a20a
feat(library/compiler/util): add replace_fvar_with
2018-09-24 18:10:26 -07:00
Leonardo de Moura
1b1d4c202d
chore(library/compiler/csimp): add auxiliary mk_let method
2018-09-24 18:10:26 -07:00
Leonardo de Moura
ac90dba90f
chore(library/compiler/csimp): disable bogus warning
2018-09-24 18:10:26 -07:00
Sebastian Ullrich
7f00149338
chore(tests/lean/parser1): fix test after rebase
2018-09-24 09:57:42 -07:00
Sebastian Ullrich
db0fc4a448
feat(library/init/lean/expander): very basic expander
2018-09-24 09:53:28 -07:00
Sebastian Ullrich
ed0a8a8827
feat(library/init/lean/parser/combinators): make optional's view default to none
2018-09-24 09:53:28 -07:00
Sebastian Ullrich
76ea8169bc
feat(library/init/lean/expander): prefix ~> notation macro: construct RHS, move to new module
2018-09-24 09:53:28 -07:00
Sebastian Ullrich
f0a983fe30
fix(frontends/lean/pp): function with implicits in structure instance
2018-09-24 09:53:28 -07:00
Sebastian Ullrich
9a0b1c7a7f
feat(library/init/lean/parser/basic): allow views to specify default value used with opt_param when nested in other views
2018-09-24 09:53:28 -07:00
Leonardo de Moura
07f96e8e09
feat(library/compiler): move let-decls that are used in only one minor to it
2018-09-23 19:27:06 -07:00
Leonardo de Moura
b9e2b4ad9f
chore(library/compiler/cse): add "todo"
2018-09-23 19:27:06 -07:00
Leonardo de Moura
783b063535
chore(library/compiler/csimp): check arity
...
It is still commented since we need to handle `cases_on` first.
2018-09-23 19:27:06 -07:00
Leonardo de Moura
6e9e9c0012
feat(library/compiler): eta expand definitions
2018-09-23 19:27:06 -07:00
Leonardo de Moura
a31f12d8cd
chore(library/init/core): revert ite+thunks modification
...
We don't need it since we marked `ite` as `[macro_inline]`
2018-09-23 19:27:06 -07:00
Leonardo de Moura
ad82ad69ec
feat(library/init/core): cleanup bor and band
2018-09-23 19:27:06 -07:00
Leonardo de Moura
dd046b0e0a
feat(library/init/core): mark id_rhs as [macro_inline]
2018-09-23 19:27:06 -07:00
Leonardo de Moura
c75db3bfc6
feat(library/compiler): unfold [macro_definition] before LCNF/ANF conversion
2018-09-23 19:27:06 -07:00
Leonardo de Moura
d43f9627c2
feat(library/init/core): use [macro_inline] to get shortcircuit semantics in new compiler stack
2018-09-23 19:27:06 -07:00
Leonardo de Moura
3473822c01
feat(library/compiler/inliner): add [macro_inline] attribute
...
For the old compiler stack, it behaves like `[inline]`.
For the new compiler stack, it instructs the compiler to inline
definitions before LCNF/ANF conversion.
2018-09-23 19:27:06 -07:00
Sebastian Ullrich
41c0bc87fd
refactor(library/init/lean/parser): make views shallow via tysyntax
2018-09-22 21:24:38 -07:00
Leonardo de Moura
57af24ee82
fix(library/compiler/csimp): bugs when using beta_reduce, and is_let_val propagation
2018-09-22 05:08:06 -07:00
Leonardo de Moura
4a7cc94944
feat(library/compiler/csimp): remove unnecessary trivial let-decls
2018-09-21 15:10:07 -07:00
Leonardo de Moura
b6169d7077
feat(library/compiler/csimp): preparing for new design
2018-09-21 14:10:56 -07:00