Commit graph

7 commits

Author SHA1 Message Date
a3d4c24f11 [fine] Multi-module compilation
It's a little bit complicated, loading a module is a two-step dance
but here's how it's done. Probably some surface-area refactoring needs
to happen so that we do the right thing.
2024-03-30 16:33:27 -07:00
ab477cd783 [fine] Simplify function compilation
This is simpler because we don't "discover" functions to compile as we
go, we just compile all the ones we can find, and functions have
pre-defined exports. This is good and useful to us as we can now refer
to functions in different modules by known indices, but it *does* make
me wonder what we're going to do for compiling generic specializations.
The previous technique was better for that sort of thing.

This is all predicated on the idea that I want to have
partially-compiled modules, which I can't really say why I want it. If
I'm happy to just compile things cross module in the same kind of
space then it's much easier to go back to the function key way of
working.
2024-03-29 19:12:18 -07:00
4c061fbd28 [fine] Lookup semantics by mid
This isn't actually correct, I really need a global view to make this
right.
2024-03-29 06:30:02 -07:00
2c03989da3 [fine] Working on rebuilding declarations
Running into walls dealing with imported declarations, thinking maybe
this structure will help me.
2024-03-28 16:56:42 -07:00
60e8f64c01 [fine] Imports maybe
Feels a little sketchy
2024-03-07 20:07:41 -08:00
a3ae4339cf [fine] Many more import-related shuffles 2024-02-15 06:12:18 -08:00
2093502031 [fine] Tests to drive import work 2024-02-11 18:45:01 -08:00