6:41:36aethI think one problem is that large Lisp programs will probably use most of the language, especially if they're using dependencies that can be very stylistically different from each other.
6:42:06edgar-rftit sounds easier than it is because you need to remove all unused implementation-internals, too
6:42:22aethRight, the implementation internals might also use stuff like e.g. structure-objects even if you don't use any
6:55:12edgar-rftevery ANSI CL function must be defined from something. This "something" must be removed from the final binary, too. What "something" is depends on the Common Lisp implementation.
6:56:30jackdanieledgar-rft: why it needs to be removed?
6:57:40jackdaniel(example: small forth interpreter written in C used to bootstrap some functions and target compiler may be a part of a final runtime too)
6:58:17edgar-rftjackdaniel: because you can't reduce the size of a binary by *adding* stuff
6:58:57jackdanielhm, I must miss a context, I thought it is a general statement
7:00:09edgar-rftthe question was howto reduce the size of a binary and the discussion was howto write a treeshaker
7:00:25jackdanielOK, thank you (and sorry for being lazy with backlog)
7:02:02edgar-rftjackdaniel: but it was said that ECL produces small binaries, maybe you're the right man to help :-)
7:02:44jackdanielsure, you can build a minimal statically linked program in around ~200KB
7:03:20jackdanielof course such runtime would only carry bytecodes compiler (but binary itself may be compiled to native beforehand), no ASDF etc
7:04:31jackdanielneedless to say, you may add module loading on demand (if present in form of fas files) - that way you may add compiled native module to a runtime
7:07:49jackdanielMcCLIM aligning text to right, wrapping by word against a margin and aligned vertically *above* bottom margin: http://i.imgur.com/Vbnr6Qx.png