kirancodes.me
To Proof Maintenance & Beyond!

Backpack: retrofitting Haskell with interfaces

Scott Kilpatrick, Derek Dreyer, Simon L. Peyton Jones, Simon Marlow

Abstract

Module systems like that of Haskell permit only a weak form of modularity in which module implementations depend directly on other implementations and must be processed in dependency order. Module systems like that of ML, on the other hand, permit a stronger form of modularity in which explicit interfaces express assumptions about dependencies, and each module can be typechecked and reasoned about independently.

Related papers