Anders Andersen, Types, signatures, interfaces, and components in NOOP: The core of an adaptive run-time, Proceedings of the 2013 International Conference on Engineering of Reconfigurable Systems & Algorithms, CSREA Press, 2013, ISBN 1-60132-262-3.
Python is a dynamic language well suited to build a run-time providing adaptive support to distributed applications. NOOP introduces a type language and a way to apply typing to functions (and methods). This type system is described in the first part of this paper. The second part use this type system to create interfaces and a software component model. And finally it is discussed how NOOP can provide adaptive support to distributed applications.