5 ms·
Chicken compiles to C, which is then compiled to native ELF by C compiler. This ELF can be loaded by OS loader, that is implemented in the kernel. Chicken can p
by ycmbntrthrwaway 11y ago
Chicken compiles to C, which is then compiled to native ELF by C compiler. This ELF can be loaded by OS loader, that is implemented in the kernel. Chicken can produce statically compiled binaries: http://wiki.call-cc.org/man/4/Deployment http://wiki.call-cc.org/man/4/Deployment
Guile does not compile to native code. It compiles to bytecode, which is stored in .rtl-text section of ELF file. It is not native code executed by CPU, but the code for Guile VM. Resulting ELF files can't be loaded by OS, they are loaded by Guile which executes bytecode. The advantage is that object file is portable between architectures, but it depends on Guile loader, which should be installed.