Leonardo de Moura
c9cd693b8e
feat(runtime/object): avoid recursion at mark_mt and mark_persistent
...
Reason: potential stack overflows
2019-07-10 11:27:49 -07:00
Leonardo de Moura
a85a98f1ec
chore(stage0): update
2019-07-10 11:19:40 -07:00
Leonardo de Moura
022d22cac4
feat(library/compiler/extract_closed): fine grain extraction
...
Motivation: increase reuse
2019-07-10 11:14:20 -07:00
Leonardo de Moura
efa48d6762
chore(stage0): update
2019-07-10 11:11:53 -07:00
Leonardo de Moura
17cc34def5
feat(library/compiler/compiler): add option compiler.extract_closed
...
It is useful when using `unsafeIO`
2019-07-10 11:08:34 -07:00
Leonardo de Moura
228ddd5fdc
chore(stage0): update
2019-07-09 16:39:32 -07:00
Leonardo de Moura
e55e5953d5
chore(library/init/lean/parser/term): remove manual eta expansions
2019-07-09 16:35:06 -07:00
Leonardo de Moura
85d151a335
feat(library/compiler): use eta expansion at eager_lambda_lifting
2019-07-09 16:34:20 -07:00
Leonardo de Moura
bda0277468
chore(stage0): update
2019-07-09 14:22:10 -07:00
Leonardo de Moura
5dae0303af
chore(library/init/lean/parser): force eta expansion and remove unnecessary [inline]
...
TODO: improve eta-expansion step in the compiler.
2019-07-09 14:09:24 -07:00
Leonardo de Moura
f1a2c83e8c
feat(library/compiler/eager_lambda_lifting): do not pass closed terms as arguments to lifted decl
2019-07-09 14:06:14 -07:00
Leonardo de Moura
0f873b7ba2
fix(library/compiler/eager_lambda_lifting): collect type dependencies
2019-07-09 13:32:41 -07:00
Leonardo de Moura
53c946a305
chore(tests/lean): fix tests
2019-07-08 22:11:19 -07:00
Leonardo de Moura
eb69c914e8
chore(library/init/lean/parser/term): add missing [inline]
2019-07-08 22:06:52 -07:00
Leonardo de Moura
ff0d184176
chore(stage0): update
2019-07-08 22:04:51 -07:00
Leonardo de Moura
c00788a982
fix(library/init/lean/compiler/ir/emitcpp): header of big boxed functions
2019-07-08 21:52:01 -07:00
Leonardo de Moura
b89a389427
chore(library/init/lean/parser/parser): force eta-expansion
2019-07-08 20:46:34 -07:00
Leonardo de Moura
324a053f4c
fix(library/init/lean/compiler/ir/resetreuse): bug at Dmain
2019-07-08 20:37:54 -07:00
Leonardo de Moura
dbc67242a1
chore(stage0): update
2019-07-08 17:40:30 -07:00
Leonardo de Moura
95dc2c5ade
chore(library/init/lean/parser): minor
2019-07-08 14:45:20 -07:00
Leonardo de Moura
f37cd3cd11
feat(library/init/lean/parser/term): match-expression
...
TODO: add whitespace sensitivity
2019-07-08 14:14:49 -07:00
Leonardo de Moura
5cfa13d08b
fix(library/init/lean/parser/parser): consume whitespace in the beginning of the input
2019-07-08 14:13:50 -07:00
Leonardo de Moura
f66f6fd455
fix(library/init/lean/parser/parser): The first tokens of try p are the first tokens of p
2019-07-08 13:46:19 -07:00
Leonardo de Moura
846ec9578d
fix(library/init/lean/parser/term): allow namedArgument notation in applications only
2019-07-08 13:43:12 -07:00
Leonardo de Moura
769e5fc8b1
chore(tests/playground/termparsertest1): add support for testing failures
2019-07-08 13:07:15 -07:00
Leonardo de Moura
4a17cf134b
feat(library/init/lean/parser/term): add forall parser
2019-07-08 13:03:21 -07:00
Leonardo de Moura
a6f9633e64
feat(library/init/lean/parser/term): dependent arrow notation
2019-07-08 12:57:49 -07:00
Leonardo de Moura
d3ca360e7f
feat(library/init/lean/parser): depArrow proof of concept
2019-07-08 10:49:54 -07:00
Leonardo de Moura
e2bcf179ac
fix(library/init/lean/parser/parser): missing trim
2019-07-08 10:33:51 -07:00
Leonardo de Moura
8b3d932212
chore(library/init/lean/parser): maxPrec ==> appPrec
2019-07-08 09:17:32 -07:00
Leonardo de Moura
1a81d60820
chore(frontends/lean/parser): simplify binder notation
...
The `<ident> : <expr>` now requires explicit brackets.
2019-07-08 08:54:19 -07:00
Leonardo de Moura
0fc9aa24bc
chore(frontends/lean/parser): remove "binder collection" support
...
This kind of notation will not be supported in the new builtin parser.
If users want they may define their own notation with this feature.
2019-07-08 08:36:29 -07:00
Leonardo de Moura
8fa888878f
chore(frontends/lean/parser): remove support for ⦃ binders
2019-07-07 08:37:49 -07:00
Leonardo de Moura
8944767f6c
chore(frontends/lean): Π ==> ∀
2019-07-07 08:13:40 -07:00
Leonardo de Moura
9334f54b87
feat(library/init/lean/parser/parser): support for whitespace sensitive left binding power
...
We use this new feature to implement array access notation `a[i]`.
2019-07-07 07:21:10 -07:00
Leonardo de Moura
2498f197b8
feat(library/init/lean/parser/term): declare some builtin infix operators
...
In Lean4, several builtin operators will be defined programmatically to
make sure we can bootstrap the system before we have all primitives
necessary for defining parsers.
2019-07-05 18:51:14 -07:00
Leonardo de Moura
794edcb18c
chore(library/init/lean/parser): minor modifications
2019-07-05 18:31:03 -07:00
Sebastian Ullrich
9707672cc8
fix(runtime/mpz): fix and document size_t functions
2019-07-05 16:27:04 -07:00
Sebastian Ullrich
723e9cc430
chore(runtime/object): fix usize_to_nat name
2019-07-05 16:26:54 -07:00
Leonardo de Moura
483b7ae51a
feat(library/init/lean/parser/term): add field notation trailing parser
2019-07-05 16:23:25 -07:00
Leonardo de Moura
ee5ec98fa9
feat(library/init/lean/parser/parser): add symbolNoWs trailing parser
2019-07-05 16:22:36 -07:00
Leonardo de Moura
fa96fb8deb
feat(library/init/lean/position): HasToString instance
2019-07-05 16:22:15 -07:00
Leonardo de Moura
113ab4824f
feat(library/init/lean/syntax): add Syntax.getTailInfo
2019-07-05 16:21:51 -07:00
Leonardo de Moura
9d5b0fd309
feat(library/init/data/array/basic): add findRev
2019-07-05 15:51:25 -07:00
Leonardo de Moura
dca0ba60fa
feat(library/init/lean/parser/parser): add fieldIdx parser
...
We should not use `numLit` for projections since it will parse
`p.1.2` as
```
Term.proj `p (numLit "1.2")
```
2019-07-05 15:07:51 -07:00
Leonardo de Moura
3285a9e77d
chore(library/init): unnecessary parentheses
2019-07-05 13:23:19 -07:00
Leonardo de Moura
f1fe5c8d8b
test(tests/playground/termparsertest1): new tests
2019-07-05 12:10:22 -07:00
Leonardo de Moura
68d29fcdd4
feat(library/init/lean/parser/term): structure instances and subtypes
2019-07-05 12:09:59 -07:00
Leonardo de Moura
e3c75d2af6
fix(library/init/lean/parser/parser): position information for strLit, numLit, ident
2019-07-05 12:07:37 -07:00
Leonardo de Moura
24f9cd9564
chore(library/init/lean/parser/parser): minor
2019-07-05 11:23:45 -07:00