scispace - formally typeset
Book ChapterDOI

Avoiding Confusion in Metacircularity: The Meta-Helix

Reads0
Chats0
TLDR
This work presents a new architecture, called the meta-helix, that preserves the advantages of metacircularity but also addresses the problems with conflation.
Abstract
A system with a metaobject protocol (MOP) allows programmers to extend it and then use the extended system as naturally as the original non-extended one. Such metaobject protocols often use a metacircular architecture to make the extensions easier to write. Unfortunately, this use of metacircularity can lead to problems stemming from a conflation of the extended and non-extended functionalities. We present a new architecture, called the meta-helix, that preserves the advantages of metacircularity but also addresses the problems with conflation.

read more

Citations
More filters
Book

Invasive Software Composition

TL;DR: Invasive software composition (ISC) composes software components by program transformation and transforms components when they are embedded in a reuse context so that components can be adapted more appropriately to reuse requirements.

Reflection in an Object-Oriented Concurrent Language.

TL;DR: This work discusses the notion of reflection in object-oriented concurrent computation and presents a reflective object- oriented concurrent language ABCL/R, and gives several illustrative examples of reflective programming such as dynamic concurrent acquisition of “ methods” from other objects.
Book ChapterDOI

A versatile kernel for multi-language AOP

TL;DR: This paper exposes the architecture of a versatile AOP kernel and its Java implementation, Reflex, and presents composition handling, including detection of interactions, and language support via a lightweight plugin architecture.
Dissertation

Meta-compilation for C++.

TL;DR: The use of meta-variables and meta-functions together with a well-disciplined lexical context for meta-programming andMeta-level execution provide a complete replacement for the traditional C preprocessor functionality, satisfying Stroustrup's goal of making Cpp redundant.
References
More filters
Book

Smalltalk-80: The Language and its Implementation

TL;DR: This book is the first detailed account of the Smalltalk-80 system and is divided into four major parts: an overview of the concepts and syntax of the programming language, a specification of the system's functionality, and an example of the design and implementation of a moderate-size application.
Book

The art of metaobject protocol

TL;DR: A new approach to programming language design is presented, which resolves fundamental tensions between elegance and efficiency, and a metaobject protocol is presented that gives users the ability to incrementally modify the language's behavior and implementation.
Book

The Art of the Metaobject Protocol

TL;DR: In this article, the authors present a new approach to programming language design, which resolves fundamental tensions between elegance and efficiency, called metaobject protocols, which are interfaces to the lanaguage that give users the ability to incrementally modify the language's behavior and implementation, as well as to write programs within the language.
Proceedings ArticleDOI

Concepts and experiments in computational reflection

TL;DR: An original experiment to introduce a reflective architecture in an object-oriented language is described and the new programming style made possible and examples show that a lot of programming problems that were previously handled on an ad hoc basis, can in a reflective Architecture be solved more elegantly.
Proceedings ArticleDOI

Subject-oriented programming: a critique of pure objects

TL;DR: This paper explores this shift to a style of objectoriented technology that emphasizes the subjective views: Subject-Oriented Programming.