Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Software Extension and Integration with Type Classes
[go: Go Back, main page]

Software Extension and Integration with Type Classes

Authors
Ralf Lämmel and Klaus Ostermann

Abstract
The abilities to extend a software module and to integrate a software module into an existing software system without changing existing source code are fundamental challenges in software engineering and programming-language design. We reconsider these challenges at the level of language expressiveness, by using the language concept of \emph{type classes}, as it is available in the functional programming language Haskell. A detailed comparison with related work shows that type classes provide a powerful framework in which solutions to known software extension and integration problems can be provided. We also pinpoint several limitations of type classes in this context.

Keywords
Software extension, Software integration, Haskell, Type classes, Object adapter, Tyranny of the dominant decomposition, Expression problem, Multiple dispatch, Family Polymorphism, Framework integration

Bibtex entry
@inproceedings{LO-GPCE06,
 author    = "Ralf L{\"a}mmel and Klaus Ostermann",
 title     = "{Software Extension and Integration with Type Classes}",
 booktitle = "{GPCE'06}",
 publisher = "ACM Press",
 year      = 2006,
 month     = oct,
 note      = {To appear}
}

Links


maintained by Ralf Lämmel (Email: Ralf.Lammel@microsoft.com)