Commit graph

38 commits

Author SHA1 Message Date
Leonardo de Moura
0abca5475f refactor: move ppExpr to IO
@Kha I am also tracking `currNamespace` and `openDecls`.

BTW, I also tried an experiment where I added `currNamespace` and
`openDecls` to `Meta.Context`, but it looked weird. This information
is only needed in the elaborator and pretty printer.
The `PPContext` object should contain everything you need. You
can put `currNamespace` and `openDecls` in the `Delaborator.Context`.
2020-09-15 18:48:21 -07:00
Leonardo de Moura
c8a4252461 refactor: move OpenDecl to Data 2020-09-15 16:53:53 -07:00
Leonardo de Moura
98a8867d90 chore: add coercions for new frontend 2020-09-13 12:00:32 -07:00
Leonardo de Moura
b025c1c623 chore: remove HasEmptyc workarounds 2020-09-11 14:28:42 -07:00
Sebastian Ullrich
7083aeea83 chore: adapt to upstream 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
bbcc718c8d chore: more server fixes 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
7b9363c828 refactor: simplify document storage in server 2020-08-31 06:50:01 -07:00
Sebastian Ullrich
94084557cd perf: allocation-free UTF-16 position computation 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
ab27e607d6 fix: LSP utility bugs 2020-08-31 06:50:01 -07:00
Sebastian Ullrich
d33b5a8ea6 chore: remove confusing comment 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
7a7a14c8b9 chore: no leading commas 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
4356017035 chore: copyright 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
23feb04d60 chore: clean up LSP code style and add more definitions from the spec 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
e9607d3095 chore: rename Structured and Structure 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
86968b5c45 feat: fix UTF-8/16 and add ServerM monad
Emojis work now 🎉
2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
58551721ee chore: namespaces 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
e1db04d347 feat: more robust snapshot-based recompilation 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
e137fa780f feat: WIP snapshots
Allow interactive editing by only recompiling parts of the file below the edit.
2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
0405fde21f feat: handle hovers with null replies 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
a4cb8249d9 chore: fixup after rebase 2020-08-31 06:50:01 -07:00
Marc Huisinga
1b3d254dd0 feat: add emptyEnv and add initSearchPath temporarily so that server binary finds LEAN_PATH 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
86582ac73c feat: edits seem to work now 2020-08-31 06:50:01 -07:00
Wojciech Nawrocki
46803ca25b feat: working diagnostics (modulo line numbers) 2020-08-31 06:50:01 -07:00
Marc Huisinga
e7b3d0be59 feat: initial server implementation 2020-08-31 06:50:01 -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
Leonardo de Moura
d36ccb166c feat: use EIO Empty instead of IO at IO.Ref primitives 2020-08-20 12:54:15 -07:00
Sebastian Ullrich
0e8ef0cb8c chore: document Format fields 2020-08-06 09:26:48 -07:00
Leonardo de Moura
6e279be7af chore: add Name.getString! 2020-07-20 15:18:45 -07:00
Leonardo de Moura
cbb14673ef chore: move RBTree and RBMap to Std 2020-06-25 13:26:16 -07:00
Leonardo de Moura
1612097788 chore: move HashMap and HashSet to Std 2020-06-25 12:46:56 -07:00
Leonardo de Moura
1be221a1f4 chore: move PersistentHashMap and PersistentHashSet to Std 2020-06-25 11:56:00 -07:00
Leonardo de Moura
2dd1d3ac3e chore: move ShareCommon to Std 2020-06-25 11:45:29 -07:00
Leonardo de Moura
249bda16c0 chore: remove prelude commands from Lean package 2020-06-25 11:21:17 -07:00
Sebastian Ullrich
6614b4d6e3 fix: use exact instead of prefix token match when inheriting precedence
/cc @leodemoura :)
2020-05-28 14:14:52 +02:00
Leonardo de Moura
4ccc3fef52 chore: move Init.Lean files to Lean package 2020-05-26 15:04:35 -07:00