CSC/ECE 517 Fall 2009/wiki2 7 cn
Problem Statement
Different languages have different mechanisms for "code reuse". Assembly and low level languages have macros, C/C++ has includes, Ruby has mixins and modules, Java has packages, and there are many other concepts around reuse and extension. Here is a page that describes the various mechanisms, groups the mechanisms into logical categories, and discusses the advantages and disadvantages of the various schemes, in terms of simplicity, performance, reliability, or other factors.
Code Reuse - A Brief Overview
References
http://www.refactoring.com
Refactoring: Improving the Design of Existing Code by Martin Fowler.