Commit graph

24104 commits

Author SHA1 Message Date
Leonardo de Moura
2cc0f25bf5 feat: getLine at EOF should return empty string
This is the same approach used in Rust, and it simplifies the code.
2020-03-23 15:44:47 -07:00
Leonardo de Moura
dc80b76106 feat: add IO.FS.lines 2020-03-23 14:53:27 -07:00
Leonardo de Moura
12c5075c67 fix: String.dropRight 2020-03-23 14:51:05 -07:00
Leonardo de Moura
41949ee801 refactor: String.toNat ==> String.toNat? and String.toNat! 2020-03-23 14:29:48 -07:00
Leonardo de Moura
94f016a3e8 fix: readLine and test 2020-03-23 14:06:17 -07:00
Leonardo de Moura
b2bddb5606 chore: style 2020-03-23 14:06:02 -07:00
Leonardo de Moura
db914052ce fix: IO.getLine 2020-03-23 12:26:09 -07:00
Leonardo de Moura
2efc1855f0 fix: object may be a boxed scalar
Example: IOError.unexpectedEof
2020-03-23 12:14:32 -07:00
Leonardo de Moura
918256ff1f fix: we cannot export constants 2020-03-23 11:54:54 -07:00
Leonardo de Moura
910cc33101 fix: missing lowerLooseBVars 2020-03-20 18:18:57 -07:00
Leonardo de Moura
b2901a9225 feat: add Closure.lean 2020-03-20 17:54:26 -07:00
Leonardo de Moura
b705142ae4 refactor: KernelException at MetaM 2020-03-20 17:54:26 -07:00
Leonardo de Moura
86784594d6 feat: add getFVars 2020-03-20 17:54:26 -07:00
Leonardo de Moura
11d6f91896 feat: add hasUnsafe 2020-03-20 17:54:26 -07:00
Sebastian Ullrich
a0e3f5f1c6 fix: delaborator positions 2020-03-20 16:50:47 +01:00
Sebastian Ullrich
4cff135ec3 feat: #eval: auto-hide () output for m Unit chained instances 2020-03-19 17:18:15 -07:00
Sebastian Ullrich
7f09973d43 feat: basic delaborator 2020-03-19 17:17:34 -07:00
Sebastian Ullrich
ed14375dad feat: sort and deduplicate "expected" tokens in parser error messages 2020-03-19 17:17:08 -07:00
Sebastian Ullrich
50cc5573e7 fix: Expr.bindingName! 2020-03-19 17:16:05 -07:00
Sebastian Ullrich
ac2360d822 feat: Syntax.formatStx: optionally show position information 2020-03-19 17:15:49 -07:00
Sebastian Ullrich
c187b1c917 refactor: move HasQuote into Init.Lean.Syntax 2020-03-19 17:14:42 -07:00
Sebastian Ullrich
e999fa678d feat: add some useful helper functions I didn't actually use in the end 2020-03-19 17:14:31 -07:00
Sebastian Ullrich
3e7bc07f19 fix: FileMap.toPosition: terminate if position is out of bounds 2020-03-19 17:14:18 -07:00
Sebastian Ullrich
6863877a1e feat: register [delab] attribute 2020-03-19 17:09:11 -07:00
Leonardo de Moura
8c7dc85b7e feat: add new quotation syntax
cc @Kha
2020-03-19 17:01:34 -07:00
Leonardo de Moura
6df8959c1c refactor: add Recognizers.lean 2020-03-19 15:47:29 -07:00
Leonardo de Moura
f4e06664c6 chore: fix debug build 2020-03-18 21:02:00 -07:00
Leonardo de Moura
eaaaaabc60 feat: allow Lean.Parser.Term.id to be used in binders
cc @Kha
2020-03-18 20:54:08 -07:00
Leonardo de Moura
2954f6ad3e feat: add MetaHasEval instance for TermElabM
cc @Kha
2020-03-18 20:09:14 -07:00
Leonardo de Moura
6cac9cab89 feat: cache closed terms at Meta.whnf 2020-03-18 16:47:50 -07:00
Leonardo de Moura
d1e02907e3 chore: register Meta.debug trace option 2020-03-18 16:42:00 -07:00
Leonardo de Moura
cd8bd55311 feat: make sure Char.ofNat can be efficiently reduced in the kernel and WHNF 2020-03-18 16:41:48 -07:00
Leonardo de Moura
736925bbce feat: allow decide! and nativeDecide! take _ as an argument
We use the expected type in this case.
2020-03-18 16:00:06 -07:00
Leonardo de Moura
c8b51b0fb3 feat: elab decide! 2020-03-18 15:48:22 -07:00
Leonardo de Moura
5b350d52ee feat: elaborate nativeDecide! 2020-03-18 15:39:23 -07:00
Leonardo de Moura
1279057bc6 feat: add mkExpectedTypeHint 2020-03-18 15:34:02 -07:00
Leonardo de Moura
77f20d9737 feat: add nativeDecide! and decide! macros 2020-03-18 15:00:22 -07:00
Leonardo de Moura
6f62986368 feat: add isDefEqStringLit 2020-03-18 11:05:44 -07:00
Leonardo de Moura
01acecf9be chore: helper predicates 2020-03-18 11:04:43 -07:00
Leonardo de Moura
cee478dc94 feat: MetaM support for expanding String literal at recursors 2020-03-18 10:29:52 -07:00
Leonardo de Moura
84f856bed9 chore: use toExpr 2020-03-18 10:26:32 -07:00
Leonardo de Moura
b4942fcd30 feat: add ToExpr instances 2020-03-18 10:22:24 -07:00
Leonardo de Moura
72ec0ec3ad feat: string literal support on recursors and kernel isDefEq 2020-03-17 17:23:33 -07:00
Leonardo de Moura
0ef54ae74c chore: remove TODO 2020-03-17 17:13:32 -07:00
Leonardo de Moura
5b5a1fceaa fix: string literal printer 2020-03-17 17:12:27 -07:00
Leonardo de Moura
6d08311765 feat: support for Nat operations at MetaM isDefEq 2020-03-17 16:17:07 -07:00
Leonardo de Moura
ea10c5c6fc feat: add support for reducing Nat basic functions in the kernel 2020-03-17 13:31:57 -07:00
Leonardo de Moura
7a82318d37 fix: to_pattern_fn bug 2020-03-17 12:58:08 -07:00
Leonardo de Moura
9009926e44 fix: nat_* primitives return objects that must be consumed
Remove bogus `wrap`.
2020-03-16 19:28:22 -07:00
Leonardo de Moura
97b8d8551d feat: elaborate nativeRefl! macro 2020-03-16 16:21:51 -07:00