Leonardo de Moura
7e244686e9
chore: remove old notation
2020-10-26 09:16:51 -07:00
Leonardo de Moura
16f7bef88f
chore: remove old frontend leftovers
2020-10-26 09:08:07 -07:00
Leonardo de Moura
13c2a8ff51
chore: remove #lang lean4 header
2020-10-25 09:54:07 -07:00
Leonardo de Moura
f89d34e0dc
chore: cleanup
2020-10-25 09:53:52 -07:00
Leonardo de Moura
8c6f536367
chore: avoid fun | ... => notation
...
@Kha the pretty printer fails when we use the `fun+match` macro. Example:
```
fun
| PSum.inl a => 1 + sizeof a
| PSum.inr b => 1 + sizeof b
```
The test `Reparen.lean` fails without this commit. Here is the error message
```
error: no known parenthesizer for kind 'Lean.Parser.Term.matchAlts'
```
2020-10-25 09:36:44 -07:00
Leonardo de Moura
1d338c4fc4
chore: move Core.lean to new frontend
2020-10-25 08:54:37 -07:00
Leonardo de Moura
f7fcff56b8
chore: remove workaround
2020-10-24 16:48:43 -07:00
Leonardo de Moura
ffa1647bd5
chore: move to new frontend
2020-10-24 16:42:10 -07:00
Leonardo de Moura
3941b55bb8
chore: remove old HasCoe
2020-10-24 16:22:52 -07:00
Leonardo de Moura
35f0bf7d77
chore: move to new frontend
2020-10-24 16:21:23 -07:00
Leonardo de Moura
522edc6743
chore: move to new frontend
2020-10-23 20:49:58 -07:00
Leonardo de Moura
535765993a
chore: move to new frontend
2020-10-23 19:59:46 -07:00
Leonardo de Moura
afd53cab75
chore: move to new frontend
2020-10-23 17:36:29 -07:00
Leonardo de Moura
3757b26dc2
chore: move to new frontend
2020-10-23 17:30:48 -07:00
Leonardo de Moura
7dfff63db6
chore: move to new frontend
2020-10-23 17:15:05 -07:00
Leonardo de Moura
6514253d10
chore: move to new frontend
2020-10-23 16:56:36 -07:00
Leonardo de Moura
3651aa2159
chore: move to new frontend
2020-10-23 16:40:15 -07:00
Leonardo de Moura
8e9d2c434f
chore: move to new frontend
2020-10-23 16:35:46 -07:00
Leonardo de Moura
e53874ce45
chore: move to new frontend
2020-10-23 16:32:44 -07:00
Leonardo de Moura
78c05e8f46
chore: move to new frontend
2020-10-23 16:13:55 -07:00
Leonardo de Moura
5c58d77836
chore: move to new frontend
2020-10-23 12:53:19 -07:00
Leonardo de Moura
7030dc91f2
chore: move to new frontend
2020-10-23 12:50:03 -07:00
Leonardo de Moura
30ce419e06
chore: move to new frontend
2020-10-23 12:14:34 -07:00
Leonardo de Moura
8bc90bc48d
chore: move to new frontend
2020-10-23 11:19:50 -07:00
Leonardo de Moura
de66ca3943
feat: add helper functions for writing macros
2020-10-23 10:59:59 -07:00
Leonardo de Moura
e642c1047a
chore: move to new frontend
2020-10-23 10:00:23 -07:00
Sebastian Ullrich
890e84d351
feat: unsafeEIO
2020-10-23 18:34:47 +02:00
Leonardo de Moura
0d99c92886
chore: use motive to name the motive of Eq.ndrec and friends
2020-10-23 05:34:26 -07:00
Leonardo de Moura
630dcf4cc1
chore: code convention
2020-10-22 18:34:43 -07:00
Leonardo de Moura
a0b8f13094
chore: remove temporary def
2020-10-22 17:42:25 -07:00
Leonardo de Moura
d4a67baa8e
refactor: rename MonadFinally.finally' => MonadFinally.tryFinally'
2020-10-22 17:40:30 -07:00
Leonardo de Moura
f1dd85e8a3
chore: remove temporary defs
2020-10-22 17:31:07 -07:00
Leonardo de Moura
02521397ac
refactor: rename MonadExceptOf.catch => MonadExceptOf.tryCatch
2020-10-22 17:27:15 -07:00
Leonardo de Moura
053b767336
chore: move to new frontend
2020-10-22 17:16:28 -07:00
Leonardo de Moura
a37e2ae46f
refactor: simplify MonadFunctor
2020-10-22 17:05:34 -07:00
Leonardo de Moura
fa3c32d3b1
chore: remove adaptExcept
2020-10-22 16:56:23 -07:00
Leonardo de Moura
31fd054214
chore: remove adaptState and adaptReader
2020-10-22 16:32:58 -07:00
Leonardo de Moura
c865abb340
refactor: remove MonadRun
2020-10-22 16:30:06 -07:00
Leonardo de Moura
073bbeb676
chore: move to new frontend
2020-10-22 16:30:03 -07:00
Leonardo de Moura
19d7050847
chore: remove Lean.Name.Name.beq
2020-10-22 16:30:02 -07:00
Leonardo de Moura
311265d833
fix: Name.beq primitive name
...
@Kha I cannot change the name is one step. The problem is that stage0
contains only the function `l_Lean_Name_Name_beq___boxed`.
So, I have to add a function with the new name, update stage0, and
then delete the old one. Otherwise, the build breaks because
the interpreter will fail when we try to test whether two names are
equal or not. The summary is: we cannot change the Lean name for a
primitive in one step because it changes the name of the auxiliary
"boxed" definition used by the interpreter.
2020-10-22 16:30:02 -07:00
Leonardo de Moura
427936fa63
chore: move to new frontend
2020-10-22 07:02:40 -07:00
Sebastian Ullrich
b77a2de10d
perf: must inline basic coercions
2020-10-22 14:26:51 +02:00
Leonardo de Moura
4f109e23c2
feat: return syntax object representing the whole file
2020-10-21 07:55:59 -07:00
Leonardo de Moura
fc9fb93c38
chore: adjust notation
2020-10-20 15:24:14 -07:00
Leonardo de Moura
fac2849e50
feat: forIn for PersistentArray
2020-10-20 09:33:50 -07:00
Leonardo de Moura
7bfa39ae45
fix: for .. in .. do notation and universe constraints
...
We use `MProd` instead of `Prod` to group values when expanding the
`do` notation. `MProd` is a universe monomorphic product.
The motivation is to generate simpler universe constraints in code
that was not written by the user but generated by the `do` macro.
Note that we are not really restricting the macro power since the
`HasBind.bind` combinator already forces values computed by monadic
actions to be in the same universe.
The new test cannot be compiled without this modication.
2020-10-18 18:05:00 -07:00
Leonardo de Moura
e3e89b4945
chore: add coercion for new frontend
2020-10-16 15:39:00 -07:00
Leonardo de Moura
dd4ae81774
chore: move to new frontend
2020-10-16 09:16:33 -07:00
Leonardo de Moura
e02a06ad1c
chore: move to new frontend
2020-10-16 08:40:42 -07:00