Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
Programming in MODULA-2 (3rd corrected ed.)
Programming in MODULA-2 (3rd corrected ed.)
Object-oriented programming in scheme
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
The definition of Standard ML
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Common LISP: the language (2nd ed.)
Common LISP: the language (2nd ed.)
Free variables and first-class environments
Lisp and Symbolic Computation
Modula-3
Interactive modular programming in Scheme
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
The programming language jigsaw: mixins, modularity and multiple inheritance
The programming language jigsaw: mixins, modularity and multiple inheritance
Quasi-static scoping: sharing variable bindings across multiple lexical scopes
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Metalevel building blocks for modular systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Typechecking and modules for multimethods
ACM Transactions on Programming Languages and Systems (TOPLAS)
Simple objects for Standard ML
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Enriching the lambda calculus with contexts: toward a theory of incremental program construction
Proceedings of the first ACM SIGPLAN international conference on Functional programming
Sharing code through first-class environments
Proceedings of the first ACM SIGPLAN international conference on Functional programming
Objective ML: a simple object-oriented extension of ML
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A little Java, a few patterns
Units: cool modules for HOT languages
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
The implementation of PC Scheme
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
The Java Language Specification
The Java Language Specification
Import is Not Inheritance - Why We Need Both: Modules and Classes
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
Synthesizing Object-Oriented and Functional Design to Promote Re-Use
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
An Algebraic Approach to Mixins and Modularity
ALP '96 Proceedings of the 5th International Conference on Algebraic and Logic Programming
Object-Oriented Programming Versus Abstract Data Types
Proceedings of the REX School/Workshop on Foundations of Object-Oriented Languages
The Translator Pattern - External Functionality with Homomorphic Mappings
TOOLS '97 Proceedings of the Tools-23: Technology of Object-Oriented Languages and Systems
Extending the scope of syntactic abstraction
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
MultiJava: modular open classes and symmetric multiple dispatch for Java
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Modular verification of collaboration-based software designs
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Jiazzi: new-age components for old-fasioned Java
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Modular mixin-based inheritance for application frameworks
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Achieving extensibility through product-lines and domain-specific languages: a case study
ACM Transactions on Software Engineering and Methodology (TOSEM)
ACM Transactions on Software Engineering and Methodology (TOSEM)
Extensible algebraic datatypes with defaults
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
Static and dynamic structure in design patterns
Proceedings of the 24th International Conference on Software Engineering
Contracts for higher-order functions
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Modular typechecking for hierarchically extensible datatypes and functions
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Verifying cross-cutting features as open systems
Proceedings of the 10th ACM SIGSOFT symposium on Foundations of software engineering
Verifying cross-cutting features as open systems
ACM SIGSOFT Software Engineering Notes
Aspect-oriented programming with Jiazzi
Proceedings of the 2nd international conference on Aspect-oriented software development
The Influence of Software Module Systems on Modular Verification
Proceedings of the 9th International SPIN Workshop on Model Checking of Software
MIX(FL): A Kernel Language of Mixin Modules
AMAST '00 Proceedings of the 8th International Conference on Algebraic Methodology and Software Technology
Modular Statically Typed Multimethods
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
A Core Calculus of Classes and Mixins
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
A Basic Model of Typed Components
ECOOP '00 Proceedings of the 14th European Conference on Object-Oriented Programming
True Modules for Java-like Languages
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
EurAsia-ICT '02 Proceedings of the First EurAsian Conference on Information and Communication Technology
ECOOP '00 Proceedings of the Workshops, Panels, and Posters on Object-Oriented Technology
Coordinating Mobile Object-Oriented Code
COORDINATION '02 Proceedings of the 5th International Conference on Coordination Models and Languages
Equational Reasoning for Linking with First-Class Primitive Modules
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
Mechanisms for secure modular programming in Java
Software—Practice & Experience - Special issue: Security software
MJ: a rational module system for Java and its applications
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
A theory of mixin modules: algebraic laws and reduction semantics
Mathematical Structures in Computer Science
Journal of Functional Programming
Anomaly-free component adaptation with class overriding
Journal of Systems and Software
Automatically Restructuring Programs for the Web
Automated Software Engineering
Modular typechecking for hierarchically extensible datatypes and functions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Supporting software composition at the programming language level
Science of Computer Programming - Special issue on new software composition concepts
Mixin modules in a call-by-value setting
ACM Transactions on Programming Languages and Systems (TOPLAS)
KERIS: evolving software with extensible modules: Research Articles
Journal of Software Maintenance and Evolution: Research and Practice - Unanticipated Software Evolution
Classbox/J: controlling the scope of change in Java
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
PolyD: a flexible dispatching framework
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
MultiJava: Design rationale, compiler implementation, and applications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Extensible programming with first-class cases
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
Polymorphic variants in Haskell
Proceedings of the 2006 ACM SIGPLAN workshop on Haskell
Statically scoped object adaptation with expanders
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Foundations of incremental aspect model-checking
ACM Transactions on Software Engineering and Methodology (TOSEM)
Knit: component composition for systems software
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
FeatherTrait: A modest extension of Featherweight Java
ACM Transactions on Programming Languages and Systems (TOPLAS)
Decomposing Verification Around End-User Features
Verified Software: Theories, Tools, Experiments
An Algebra for Features and Feature Composition
AMAST 2008 Proceedings of the 12th international conference on Algebraic Methodology and Software Technology
CZ: multiple inheritance without diamonds
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
Contracts for first-class modules
DLS '09 Proceedings of the 5th symposium on Dynamic languages
A calculus for uniform feature composition
ACM Transactions on Programming Languages and Systems (TOPLAS)
Mixin modules and computational effects
ICALP'03 Proceedings of the 30th international conference on Automata, languages and programming
An algebraic foundation for automatic feature-based program synthesis
Science of Computer Programming
MetaFJig: a meta-circular composition language for Java-like classes
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Modules as objects in newspeak
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
A framework for modular linking in OO languages
JMLC'06 Proceedings of the 7th joint conference on Modular Programming Languages
Flexible type-safe linking of components for java-like languages
JMLC'06 Proceedings of the 7th joint conference on Modular Programming Languages
Evaluating support for features in advanced modularization technologies
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
FeatureC++: on the symbiosis of feature-oriented and aspect-oriented programming
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
On the extensibility requirements of business applications
Proceedings of the 2012 workshop on Next Generation Modularity Approaches for Requirements and Architecture
Features and object capabilities: reconciling two visions of modularity
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
On the integration of classboxes into c#
SC'06 Proceedings of the 5th international conference on Software Composition
Using metadata transformations to integrate class extensions in an existing class hierarchy
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
Transactions on Aspect-Oriented Software Development IX
Correctness of intrusive data structures using mixins
Proceedings of the 16th International ACM Sigsoft symposium on Component-based software engineering
ICFP 2002: Contracts for higher-order functions
ACM SIGPLAN Notices - Supplemental issue
Hi-index | 0.00 |
Module and class systems have evolved to meet the demand for reuseable software components. Considerable effort has been invested in developing new module and class systems, and in demonstrating how each promotes code reuse. However, relatively little has been said about the interaction of these constructs, and how using modules and classes together can improve programs. In this paper, we demonstrate the synergy of a particular form of modules and classes---called units and mixins, respectively---for solving complex reuse problems in a natural manner.