Today’s module systems do not effectively support information hiding in the presence of shared mutable objects, causing serious problems in the development and evolution of larg...
Monads are widely used in Haskell for modeling computational effects, but defining monads remains a daunting challenge. Since every part of a monad's definition depends on it...
Modern challenges led to a design of a wide range of programming models for reactive, parallel and concurrent programming, but these are often t to encode in general purpose langua...
Translation validators are static analyzers that attempt to verify that program transformations preserve semantics. Normalizing translation validators do so by trying to match the...
Jean-Baptiste Tristan, Paul Govereau, Greg Morrise...
Software system documentation is almost always expressed informally, in natural language and free text. Examples include requirement specifications, design documents, manual page...
Giuliano Antoniol, Gerardo Canfora, Andrea De Luci...