selected publications academic article A type-centric framework for specifying heterogeneous, large-scale, component-oriented, architectures. Science of Computer Programming. 75:615-637. 2010