J Siek, W Taha - European Conference on Object-Oriented …, 2007 - Springer
Static and dynamic type systems have well-known strengths and weaknesses. In previous work we developed a gradual type system for a functional calculus named λ^?_→. Gradual …
Software product lines aim to create highly configurable programs from a set of features. Common belief and recent studies suggest that aspects are well-suited for implementing …
Focusing on path-dependent types, the paper develops foundations for Scala from first principles. Starting from a simple calculus D _<:<: of dependent functions, it adds records …
S Apel, T Leich, G Saake - IEEE Transactions on Software …, 2008 - ieeexplore.ieee.org
Two programming paradigms are gaining attention in the overlapping fields of software product lines (SPLs) and incremental software development (ISD). Feature-oriented …
Where object-oriented languages deal with objects as described by classes, model-driven development uses models, as graphs of interconnected objects, described by metamodels …
N Amin, T Rompf - Proceedings of the 44th ACM SIGPLAN Symposium …, 2017 - dl.acm.org
While type soundness proofs are taught in every graduate PL class, the gap between realistic languages and what is accessible to formal proofs is large. In the case of Scala, it …
Module systems enable a divide and conquer strategy to software development. To implement compile-time variability in software product lines, modules can be composed in …
T Rompf, N Amin - Proceedings of the 2016 ACM SIGPLAN International …, 2016 - dl.acm.org
Scala's type system unifies aspects of ML modules, object-oriented, and functional programming. The Dependent Object Types (DOT) family of calculi has been proposed as a …
C Hofer, K Ostermann, T Rendel, A Moors - Proceedings of the 7th …, 2008 - dl.acm.org
The influential pure embedding methodology of embedding domain-specific languages (DSLs) as libraries into a general-purpose host language forces the DSL designer to commit …