Commit graph

3523 commits

Author SHA1 Message Date
Leonardo de Moura
ea5eed7964 fix: do not assume the constructor name prefix is the inductive type name 2020-07-23 14:36:54 -07:00
Leonardo de Moura
ad485484a5 chore: minor 2020-07-17 17:15:33 -07:00
Leonardo de Moura
428fb5be3c chore: remove dead field 2020-07-17 11:21:43 -07:00
Leonardo de Moura
b5dc185e70 chore: remove private parent structure support from old frontend 2020-07-17 09:21:14 -07:00
Leonardo de Moura
1e862b83c5 chore: remove support for old structure command 2020-07-16 15:11:11 -07:00
Leonardo de Moura
196435c73b chore: use new fun syntax in old pretty printer 2020-06-17 21:28:03 -07:00
Leonardo de Moura
dbbacb3bfd chore: remove comment from Linter
Old frontend is just providing `Syntax.missing`
2020-06-17 21:28:03 -07:00
Sebastian Ullrich
9739356b91 fix: let syntax in old pretty printer
/cc @leodemoura

I didn't remove support for let binding groups, but that's good enough for the time being
2020-06-17 18:01:18 +02:00
Sebastian Ullrich
6404af6983 feat: IO.Prim.withIsolatedStreams 2020-06-16 10:41:42 -07:00
Sebastian Ullrich
f5015c9bc1 feat: adjust fun/do precedence in old frontend 2020-06-16 10:41:42 -07:00
Sebastian Ullrich
cfd1900625 fix: #eval: redirect stdout/stderr 2020-06-16 12:06:53 +02:00
Leonardo de Moura
1307405300 chore: make sure parser! and tparser! use a syntax similar to the one used at syntax for setting precedences
cc @Kha
2020-06-10 16:09:13 -07:00
Leonardo de Moura
cdc2dbe28d chore: use leadingNode and trailingNode in the old frontend 2020-06-10 15:05:22 -07:00
Leonardo de Moura
ca018d561e chore: update parser! and tparser! macros in the old frontend 2020-06-10 14:39:33 -07:00
Leonardo de Moura
7a323a0c7b feat: allow parser! and tparser! to set the parser precedence 2020-06-03 18:11:13 -07:00
Sebastian Ullrich
e6d27c276b feat: #eval: capture stderr 2020-05-26 14:32:42 +02:00
Sebastian Ullrich
b35b973a5d fix: precedence of ! in old frontend 2020-05-26 11:26:57 +02:00
Leonardo de Moura
7c76a19885 chore: fix includes 2020-05-22 14:17:25 -07:00
Leonardo de Moura
c01da783ca fix: { ... : <expected-type> } syntax in the old frontend 2020-05-20 15:49:40 -07:00
Leonardo de Moura
22ae065d16 feat: add { ... : <expected-type> } syntax
It replaces the `{ <struct-name> . ... }` syntax.
2020-05-20 15:24:27 -07:00
Leonardo de Moura
3f44e8f3df chore: remove .. src syntax from old frontend 2020-05-20 13:07:21 -07:00
Leonardo de Moura
8bdca35282 chore: use #include <lean/runtime/...> for runtime .h files 2020-05-18 11:30:07 -07:00
Sebastian Ullrich
76a97ea4fc feat: infer module name from cwd instead of LEAN_PATH, also make build system less specific to Init/ 2020-05-14 14:38:52 +02:00
Leonardo de Moura
03403ba3c8 feat: make RelaxedImplicit the default behavior 2020-05-12 15:02:03 -07:00
Leonardo de Moura
e596820f2e chore: remove () modifier
cc @Kha
2020-05-12 15:02:02 -07:00
Sebastian Ullrich
ec9f4b579d chore: improve precision of compilation time profiling 2020-04-24 15:11:36 +02:00
Sebastian Ullrich
24f22f7643 chore: log cumulative #eval execution time 2020-04-24 15:11:36 +02:00
Sebastian Ullrich
8f67db0101 refactor: never implicitly ignore monadic results
Also change `do e; f` to desugar to `e *> f` so that it is affected as well
2020-04-23 11:09:59 -07:00
Leonardo de Moura
746615d81d chore: remove as alternative for => 2020-04-06 13:45:22 -07:00
Sebastian Ullrich
b6fc9428f1 fix: support Windows newlines and '\r' escape 2020-03-27 13:21:21 -07:00
Leonardo de Moura
2efc1855f0 fix: object may be a boxed scalar
Example: IOError.unexpectedEof
2020-03-23 12:14:32 -07:00
Sebastian Ullrich
4cff135ec3 feat: #eval: auto-hide () output for m Unit chained instances 2020-03-19 17:18:15 -07:00
Leonardo de Moura
7a82318d37 fix: to_pattern_fn bug 2020-03-17 12:58:08 -07:00
Sebastian Ullrich
e3920552b0 fix: updating binding info of variables 2020-03-11 07:30:58 -07:00
Leonardo de Moura
6873400193 chore: remove silent | matchFailed support
Before this commit
```lean
pattern <- action
```
was being translated by the old frontend into
```lean
pattern <- action | matchFailed
```
This produced counterintuitive behavior, and performance problems when
tryin to synthesize `MonadFail` instances.
BTW, the new frontend does not implement this feature. I didn't even
remember the old frontend did this.
I will also remove the class `MonadFail` from stdlib.

cc @Kha @dselsam
2020-02-10 13:15:21 -08:00
Sebastian Ullrich
933ff6dc88 perf: short-circuit all antiquotation parsers 2020-02-06 08:12:08 -08:00
Leonardo de Moura
f0f522a6d6 chore: prepare to rename old coe primitives 2020-01-28 08:18:56 -08:00
Sebastian Ullrich
58313a050a Revert "fix: #eval redirection of stdout"
This reverts commit 123577126c.
2020-01-25 16:32:06 +01:00
Sebastian Ullrich
ad29568051 Revert "fix: redirect"
This reverts commit addbb8dd67.
2020-01-25 16:32:06 +01:00
Leonardo de Moura
addbb8dd67 fix: redirect
@cipher1024 I modified your fix. It would produce memory leaks if the
code executed by #eval modifies the stdout.
Here is the problem.
- Your replaces the handler with some new handler `H` and stores the
  old handler `O` in a `flet`.
- Code is executed and replaces the stdout handler with `H'`. The `H`s RC is
  decremented and `H'`s RC is incremeneted. So far, so good.
- Now, the destructor of your `flet` is executed, and it replaces `H'`
  with `O`, but `H'` RC is not decremented.
2020-01-23 15:58:34 -08:00
Simon Hudon
123577126c fix: #eval redirection of stdout 2020-01-23 15:44:49 -08:00
Leonardo de Moura
42642a2890 fix: new_frontend command issue 2020-01-15 20:53:23 -08:00
Simon Hudon
92c8773137 feat: file IO using handles 2020-01-12 08:02:48 -08:00
Leonardo de Moura
5eebda7e34 chore: add workaround for allowing new frontend to see old frontend exports 2020-01-11 13:44:22 -08:00
Leonardo de Moura
fe09e99fef chore: disable attribute features that are not currently being used 2020-01-08 15:49:55 -08:00
Leonardo de Moura
8e7c719ee8 chore: Pi => forall 2020-01-07 11:15:40 -08:00
Leonardo de Moura
091cc48901 feat: expose old pretty printer in Lean 2020-01-07 10:29:10 -08:00
Leonardo de Moura
477d53f2dd fix: position information 2020-01-06 21:07:41 -08:00
Leonardo de Moura
e0ae6068d4 chore: set end_pos 2020-01-06 21:00:52 -08:00
Leonardo de Moura
139d6c64e6 feat: add new_frontend command
cc @kha
2020-01-06 20:44:53 -08:00