Repository landing page

We are not able to resolve this OAI Identifier to the repository landing page. If you are the repository manager for this record, please head to the Dashboard and adjust the settings.

Structuring languages as object-oriented libraries

Abstract

The development of programming languages is challenging because the typical language processing toolchain consists of different artifacts interacting with each other. The ideal scenario for engineering languages is one closer to traditional software engineering, where reuse, in the form of frameworks and libraries, has optimized development times. In the case of programming language engineering, there is a tension between extending the syntax and adding new operations to a language. This tension in terms of extensibility is concisely summarized in the Expression Problem.Object Algebras solve the Expression Problem in the context of object-oriented programming, requiring only inheritance and parametric polymorphism from the host language. This thesis postulates that, given their advantages in terms of modularity and extensibility, Object Algebras are a suitable technique for structuring libraries of languages, making reuse a central practice in the implementation of languages.This dissertation thus introduces applications of the Object Algebra pattern for implementing language libraries: Recaf, a framework for defining libraries of Java dialects, and Modular Interpreters with Implicit Context Propagation, a technique to compose language interpreters with different context requirements. As supporting mechanisms we introduce String Origins, a technique to trace the results of program transformations back to their origins, and JEff, a language that integrates object orientation with effects and handlers, as a first step towards an object-oriented language that could host effectful modular interpreters.The results described in this dissertation show that object orientation, and Object Algebras in particular, provides a fertile foundation for the vision of library-based language development

Similar works

Full text

thumbnail-image

International Migration, Integration and Social Cohesion online publications

redirect
Last time updated on 08/03/2023

Having an issue?

Is data on this page outdated, violates copyrights or anything else? Report the problem now and we will take corresponding actions after reviewing your request.