A system and method is provided for enabling the reuse of algorithms in multiple
application frameworks with no alterations required of the algorithm once it is
developed. An inverted memory allocation mechanism enables various algorithm modules
to be integrated into a single application without modifying the source code of
the algorithm modules. An algorithm module is designed in a manner that renders
the algorithm module reentrant within a preemptive environment. Each data access
instruction of the algorithm module is coded in a manner that renders the algorithm
module and all of the data access instructions relocatable. A memory interface
is provided within the algorithm module that supports both design-time object instantiation
and dynamic object instantiation.