Posted by: leppie | November 16, 2009

Experimental monolitic IronScheme executable


A common request is to have some form of compiled libraries to run a Scheme program, and not relying on source files for the program to run.

This is already provided in IronScheme via precompiled/serialized libraries, but still results in a ‘binary’ format for every library file, which in turn can end up being quite a few with a fixed directory structure.

So yesterday I worked around a serialization bug that hindered my progress on improving this.

I have added the following:
1. Created a container package to shove all precompiled libraries in.
2. Added the ability to use ILMerge to merge all the assemblies into 1 executable.
3. And for bonus points, I added the ability to include the container package into such a merged executable, resulting in 1 fat executable with all the libraries included.

For now, you can go to this IronScheme page and download the result of step 3. A 21MB executable with everything to run IronScheme, including all IronScheme and SRFI and miscellaneous libraries.

Of course your own program may not need all the libraries, so you could chose to only merge the ‘base’ 2.1mb executable with say 1mb of libraries.

I will add some documentation later to explain how to craft these.





  1. Very cool leppie. People love this sort of thing.

  2. Thanks Llewellyn!

    It is nice to see that there are people combining love to Scheme magic and understaning of industry demands.

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s


%d bloggers like this: