• Home
  • Search
  • Reusable Components for Lightweight Mechanisation of Programming Languages
  • Cite Icon7
  • https://doi.org/10.1007/978-3-642-39614-4_1Copy DOI Icon

Reusable Components for Lightweight Mechanisation of Programming Languages

  • Jan 1, 2013
  • Seyed H Haeri +1 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Abstract Implementing Programming Languages (PLs) has always been a challenge for various reasons. One reason is the excess of routine tasks to be redone on every implementation cycle. This is despite the remarkable fraction of syntax and semantics usually shared between successive cycles. In this paper, we present a component-based approach to avoid reimplementation of shared PL fractions. We provide two sets of reusable components; one for syntax implementation and another for semantics. Our syntax and semantics components correspond to syntactic categories and semantics rules of a PL specification, respectively. We show how, in addition to their service to reusability in syntax and semantics, our components can cater reusable implementation of PL analyses.Our current level of experimentation suggests that this approach is applicable wherever the following two features are available or can be simulated: Type Constraints and Multiple Inheritance. Implementing a PL using our approach, however, requires some modest programming discipline that we will explain throughout the text.KeywordsOperational SemanticSyntactic CategoryDerivation TreeExpression TraitType ConstraintThese keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Similar Papers
  • PDF
  • Research Article
  • Citations6

A Comparative Study on the Effect of Multiple Inheritance Mechanism in Java, C++, and Python on Complexity and Reusability of Code

  • Jan 01, 2017
  • International Journal of Advanced Computer Science and Applications
  • Fawzi Albalooshi +1
  • Conference Article
  • Citations4

A typed intermediate language for compiling multiple inheritance

  • Jan 17, 2007
  • Juan Chen
  • Book Chapter
  • Citations2

Fril++ a language for object-oriented programming with uncertainty

  • Jan 01, 1999
  • J F Baldwin +2
  • Book Chapter
  • Citations3

Towards a Language for Defining Reusable Programming Language Components

  • Jan 01, 2022
  • Cas Van Der Rest +1
  • Conference Instance
  • Citations1

Proceedings of the 5th international workshop on Java technologies for real-time and embedded systems - JTRES '07

  • Jan 01, 2007
  • Research Article
  • Citations1

The comparative programming languages course

  • Feb 27, 2002
  • ACM SIGCSE Bulletin
  • W Douglas Maurer
  • Research Article
  • Citations3

A new programming paradigm for engineering design software

  • Jun 01, 1994
  • Engineering with Computers
  • F A Salustri +1
  • Book Chapter
  • Citations20

Stateful Traits

  • Jan 01, 2007
  • Alexandre Bergel +3
  • Conference Article
  • Citations18

Mining system specific rules from change patterns

  • Sep 04, 2013
  • Andre Hora +3
  • Research Article
  • Citations20

Analysis of reusability of object-oriented systems using object-oriented metrics

  • Jul 12, 2013
  • ACM SIGSOFT Software Engineering Notes
  • Brij Mohan Goel +1
  • Research Article
  • Citations443

The Draco Approach to Constructing Software from Reusable Components

  • Sep 01, 1984
  • IEEE Transactions on Software Engineering
  • James M Neighbors
  • Research Article
  • Citations124

Eiffel : A language and environment for software engineering

  • Jun 01, 1988
  • Journal of Systems and Software
  • Bertrand Meyer
  • Book Chapter
  • Citations1

Inheritance in Programming Languages

  • Jan 01, 2009
  • Krishnaprasad Thirunarayan
  • Conference Article
  • Citations45

Two-directional record layout for multiple inheritance

  • Jan 01, 1990
  • William Pugh +1
  • PDF
  • Research Article
  • Citations14

Using model-driven engineering to automate software language translation

  • Feb 28, 2024
  • Automated Software Engineering
  • Kevin Lano +1
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.