Started working on a prolog backend for coil.
Here's an example of compiling a coil program to prolog & exploring the codebase via prolog repl.
This is early but the hope is to have an easily explorable codebase, to really treat the codebase as a database.
Ambition for this is
• Allow users of coil to write their own rules in prolog to ensure things about the program
• Make writing a type checker easier for me
• Make writing tooling for coil easier
Talking to others I realized I'm giving the wrong idea by talking about types here.
I'm not very interested in building a full fledged type system, but a very powerful constraint/linter system that end users can easily extend.