Run bytecode images, instead of individual bytecode files
This replaces individual bytecode files (.inkoc
files) with a single bytecode image (a .ibi
file). These images act a bit like Java JAR files, and contain all the bytecode modules a program needs. Unlike JARs, you can't include non-bytecode files such as JPGs or shared extensions.
The use of a single image removes the need for runtime loading support, improves startup times, makes it easier to distribute code, and should also make it easier to bootstrap the self-hosting compiler in the future.
Commits 133600aa and 6930068a lay the foundation for this work, which is then added in commit d635f43f. See the commit messages of these commits for more details.
Edited by Yorick Peterse