This paper describes an assembly-language type system capable of ensuring memory safety in the presence of both heap and stack allocation. The type system uses linear logic and a ...
Limin Jia, Frances Spalding, David Walker, Neal Gl...
In object oriented programming, the functionalities of a system result from the interactions (message exchanges) among the objects allocated by the system. While designing object ...
Avoiding architectural erosion helps extend the lifetime of an evolving software system. Erosion can be reduced by ensuring that (i) developers share a good understanding of a sys...
Ciaran O'Reilly, Philip J. Morrow, David W. Bustar...
Long-lived, architecture-based software systems are increasingly important. Effective process support for these systems depends upon recognising their compositional nature and the ...
R. Mark Greenwood, Dharini Balasubramaniam, Sorana...
Software evolution in a cooperative environment, where a pool of maintainers/developers contribute to the overall system changes, is challanging due to several factors, such as th...