Leonardo de Moura
3499016895
chore: improve error message when compiling code containing axioms or noncomputable definitions
...
closes #496
2021-05-31 20:27:15 -07:00
Sebastian Ullrich
2f168e3364
feat: mkConstWithLevelParams
2021-03-20 08:28:18 -07:00
Leonardo de Moura
be841a7cad
chore: throwError! => throwError, throwErrorAt! => throwErrorAt
...
@Kha I marked the corresponding methods as `protected`.
I currently can't stand `throw_error`, and I am optimistic about
server highlighting feature you are working on :)
2021-03-11 11:59:45 -08:00
Leonardo de Moura
4ffc2c93cd
feat: invoke mkSizeOfInstances from structure and inductive commands
2021-01-20 17:07:02 -08:00
Leonardo de Moura
711d1754a6
chore: improve error message
...
closes #276
2021-01-17 07:51:08 -08:00
Leonardo de Moura
5b1b5bed0c
chore: naming convention
2021-01-11 12:52:51 -08:00
Leonardo de Moura
84f78edb31
feat: store declaration ranges
2021-01-11 12:50:11 -08:00
Leonardo de Moura
fcd73e72c1
feat: add getModuleOf
...
cc @Kha @Vtec234
2021-01-07 15:20:29 -08:00
Leonardo de Moura
4001407f10
refactor: add MonadError class abbreviation
2020-12-14 09:15:26 -08:00
Leonardo de Moura
ebd8680de8
feat: add Deriving/Inhabited.lean
2020-12-12 18:52:24 -08:00
Leonardo de Moura
396e767f3d
refactor: move Ref to Prelude and rename it to MonadRef
...
`MacroM` will implement `MonadRef` because
1- It will be easier to throw errors from macros
2- We will be able to `getRef` to retrieve the syntax node at macro
rules.
I renamed `Ref` to `MonadRef` to make it consistent with other classes
providing monadic methods (e.g. `MonadEnv`, `MonadState`, etc).
cc @Kha
2020-11-13 16:00:31 -08:00
Leonardo de Moura
13c2a8ff51
chore: remove #lang lean4 header
2020-10-25 09:54:07 -07:00
Leonardo de Moura
0ab38742db
chore: cleanup
2020-10-24 06:18:01 -07:00
Leonardo de Moura
e1469d07d2
chore: move to new frontend
2020-10-20 16:36:02 -07:00
Leonardo de Moura
e54a207986
refactor: provide Options to lean_eval_const
...
add `ImportM` monad for `addImportedFn`
cc @Kha
2020-10-19 10:21:38 -07:00
Leonardo de Moura
44129ce461
refactor: move withoutModifyingEnv to MonadEnv
2020-09-25 06:48:51 -07:00
Leonardo de Moura
a28679358e
refactor: remove MonadError
2020-09-18 09:58:13 -07:00
Leonardo de Moura
40777c203b
feat: add MonadEnv helper methods
2020-09-10 14:58:22 -07:00
Leonardo de Moura
9a69ab568e
feat: add mkAuxName for MonadEnv
2020-09-08 10:56:31 -07:00
Leonardo de Moura
e5c35d3a4e
feat: add AddMessageDataContext
2020-08-28 18:05:42 -07:00
Leonardo de Moura
cc47705691
chore: remove import Init.*
2020-08-28 15:39:08 -07:00
Leonardo de Moura
4bc1be17f4
chore: cleanup
2020-08-28 09:18:22 -07:00
Leonardo de Moura
1103806ff4
refactor: HasMonadLift ==> MonadLift
2020-08-25 13:54:41 -07:00
Leonardo de Moura
b672f0820b
chore: remove workarounds
2020-08-23 19:56:01 -07:00
Leonardo de Moura
77b9445544
feat: real ST monad
...
@Kha: the new `ST` (and `EST`) are escapable like the Haskell ST monad.
It makes `StateRefT` much more useful because we can now run it from pure
code.
2020-08-23 12:15:32 -07:00
Leonardo de Moura
5ffbada3df
feat: add Lean.MonadEnv, Lean.MonadError, and Lean.MonadOptions
...
This is the first set of polymorphic methods. I will add more later,
and keep reducing code duplication.
cc @Kha
2020-08-22 16:00:43 -07:00