We examine the effects of various language design decisions on theprogramming styles available to a user of the language, with particular emphasis on the ability to incrementally construct modular systems. At each step we exhibit an interactive meta-circular interpreter for the language under consideration. Each new interpreter is the result of an incremental change to a previous interpreter. We explore the consequences of various variable binding disciplines and the introduction of side effects. We find that dynamic scoping is unsuitable for constructing procedural abstractions, but has another role as agent of modularity, being a structured form of side effect. More general side effects are also found to be necessary to pr...
The Unix C shell interpreter language shall be used to explore an approach of modular language descr...
We consider the problem of designing the top-level modular structure of an implementation. Our start...
Abstract We present a type theory for higher-order modules that accountsfor many central issues in m...
Programming languages and formal notations are central to computer science. A significant part of c...
Abstract. We describe two innovations in programming languages: mod-ularity and projectional editing...
The continuous need for more ambitious, more complex, and more dependable software systems demands m...
The problem of writing modular interpreters for functional languages has largely been studied from t...
textComplex systems are naturally understood as combinations of their distinguishing characteristics...
Providing proper modularity is one of the major challenges in software development. In the context o...
The continuous need for more ambitious, more complex, and more dependable software systems demands m...
When writing specifications of modular programs, two crucial elements are abstraction and clauses. W...
Design patterns are distilled from many real systems to catalog common programming practice. We have...
Aspect-oriented software development is motivated by the desire to localize definitions of independe...
AbstractIn modular software design it is expected that the correctness of the implementation of a co...
Compilers are among the most widely-studied pieces of software; and, modularizing these valuable art...
The Unix C shell interpreter language shall be used to explore an approach of modular language descr...
We consider the problem of designing the top-level modular structure of an implementation. Our start...
Abstract We present a type theory for higher-order modules that accountsfor many central issues in m...
Programming languages and formal notations are central to computer science. A significant part of c...
Abstract. We describe two innovations in programming languages: mod-ularity and projectional editing...
The continuous need for more ambitious, more complex, and more dependable software systems demands m...
The problem of writing modular interpreters for functional languages has largely been studied from t...
textComplex systems are naturally understood as combinations of their distinguishing characteristics...
Providing proper modularity is one of the major challenges in software development. In the context o...
The continuous need for more ambitious, more complex, and more dependable software systems demands m...
When writing specifications of modular programs, two crucial elements are abstraction and clauses. W...
Design patterns are distilled from many real systems to catalog common programming practice. We have...
Aspect-oriented software development is motivated by the desire to localize definitions of independe...
AbstractIn modular software design it is expected that the correctness of the implementation of a co...
Compilers are among the most widely-studied pieces of software; and, modularizing these valuable art...
The Unix C shell interpreter language shall be used to explore an approach of modular language descr...
We consider the problem of designing the top-level modular structure of an implementation. Our start...
Abstract We present a type theory for higher-order modules that accountsfor many central issues in m...