catala/compiler/shared_ast
Louis Gesbert 3649f92975 Rework resolution of module elements
This changes the `decl_ctx` to be toplevel only, with flattened references to
uids for most elements. The module hierarchy, which is still useful in a few
places, is kept separately.

Module names are also changed to UIDs early on, and support for module aliases
has been added (needs testing).

This resolves some issues with lookup, and should be much more robust, as well
as more convenient for most lookups.

The `decl_ctx` was also extended for string ident lookups, which avoids having
to keep the desugared resolution structure available throughout the compilation
chain.
2023-11-30 21:14:12 +01:00
..
definitions.ml Rework resolution of module elements 2023-11-30 21:14:12 +01:00
dune Fix most doc errors 2023-06-02 17:17:45 +02:00
expr.ml typing default: fix ocaml runtime when using eoption 2023-11-27 11:17:38 +01:00
expr.mli Rework resolution of module elements 2023-11-30 21:14:12 +01:00
interpreter.ml Rework resolution of module elements 2023-11-30 21:14:12 +01:00
interpreter.mli The interpreter might return custom terms 2023-10-13 16:16:45 +02:00
operator.ml Operator mismatch fix 2023-10-03 18:44:12 +02:00
operator.mli Fix most doc errors 2023-06-02 17:17:45 +02:00
optimizations.ml Reformat 2023-11-27 11:09:08 +01:00
optimizations.mli Improve integration of marks into the main AST 2023-05-17 17:37:00 +02:00
print.ml Printer: some small improvements 2023-11-28 13:37:46 +01:00
print.mli Rework resolution of module elements 2023-11-30 21:14:12 +01:00
program.ml Rework resolution of module elements 2023-11-30 21:14:12 +01:00
program.mli Rework resolution of module elements 2023-11-30 21:14:12 +01:00
qident.ml Add some helper functions in a wrapper Map module 2023-07-12 11:51:15 +02:00
qident.mli Some commented code cleanup and clarifications 2023-06-19 16:36:09 +02:00
scope.ml Reformat 2023-11-27 11:09:08 +01:00
scope.mli Reformat 2023-11-27 11:09:08 +01:00
shared_ast.ml Wip support for modules 2023-06-15 17:56:57 +02:00
shared_ast.mld Fix most doc errors 2023-06-02 17:17:45 +02:00
type.ml Typer: add built-in "'a default" type 2023-11-27 11:06:01 +01:00
type.mli - [x] shared_ast 2023-02-20 15:57:42 +01:00
typing.ml Rework resolution of module elements 2023-11-30 21:14:12 +01:00
typing.mli Rework resolution of module elements 2023-11-30 21:14:12 +01:00
var.ml Fixes related to environments and lookups 2023-08-31 18:31:48 +02:00
var.mli Fixes related to environments and lookups 2023-08-31 18:31:48 +02:00