Much of the software reuse supported by functional languages is invisible. Nonetheless, there is reason to hope that functional languages may provide superior support for reuse in the traditional sense. Factors favoring reuse include: expressiveness of types, lack of side effects (or, conversely, making explicit and available every effect of every operation) and a sophisticated module system. The author discusses three specific examples of reuse in functional programs: in SML/NJ, in Ensemble and in Erlang.
展开▼