Common LISP: the language (2nd ed.)
Common LISP: the language (2nd ed.)
The art of metaobject protocol
The art of metaobject protocol
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Hyper/J™: multi-dimensional separation of concerns for Java™
Proceedings of the 24th International Conference on Software Engineering
Mylar: a degree-of-interest model for IDEs
Proceedings of the 4th international conference on Aspect-oriented software development
Using task context to improve programmer productivity
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Expressive programs through presentation extension
Proceedings of the 6th international conference on Aspect-oriented software development
Unparsed patterns: easy user-extensibility of program manipulation tools
PEPM '08 Proceedings of the 2008 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Software engineering as live performance
Proceedings of the FSE/SDP workshop on Future of software engineering research
JavaCtx: seamless toolchain integration for context-oriented programming
Proceedings of the 3rd International Workshop on Context-Oriented Programming
Codelets: linking interactive documentation and example code in the editor
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Proceedings of the 34th International Conference on Software Engineering
Proceedings of the 2012 ACM Conference on Ubiquitous Computing
LAMBDAFICATOR: from imperative to functional programming through automated refactoring
Proceedings of the 2013 International Conference on Software Engineering
Hi-index | 0.00 |
Programming language innovation has been hindered by the difficulty of making changes to existing languages. A key source of difficulty is the tyrannical nature of existing approaches to realizing languages -- adding a new language construct means that any tool, document or programmer that works with the language must be prepared to deal with that construct. A registration-based approach makes it possible to define language constructs that are not tyrannical. They are instead transient -- the program appears to be written using the constructs only so long as a given programmer wants to see it that way. This approach may have the potential to greatly facilitate programming language innovation.