1.3.2.6 Break basic things up into libraries
Bruce Hoult
A goal of Dylan is to be able to split finished programs out of the development environment and make small binaries. That pretty much precludes runtime operations on programs, except in programs that exeute only within the development environment, or carry very large amounts of it with them.
Scott E. Fahlman
If basic things are broken up into libraries rather than being a single monolithic system, it is very important to keep the libraries consistent and to keep track of what depends on what. A hypercode environment can help here.
 
It's relatively easy to break chunks of the language off into libraries, because the library can define both new classes and new methods to work on them. You don't have to decide in advance whether the + operator should be overloaded to support vector arithmetic, for example, because a library can define both the necessary classes and the methods that extend the arithmetic operations to cover these.