Article ID Journal Published Year Pages File Type
433293 Science of Computer Programming 2015 9 Pages PDF
Abstract

•We recall how programming languages can be specified in ASF+SDF.•We analyse the reusability of ASF+SDF specifications of individual constructs.•Some alternative styles of semantics provide greater reusability than ASF+SDF.•Component-based semantics is based on reusable fundamental constructs (funcons).•Our analysis could influence the evolution of Rascal, which has superseded ASF+SDF.

A semantic specification of a programming language can be relevant for programmers to understand software written in the language, as well as for the implementers of a language to understand the intentions of its designers. In the early 1980s, Jan Heering and Paul Klint envisioned complete language specifications as libraries of reusable individual constructs, supported by a generic programming environment. This led to the development of the Asf+Sdf specification language and its Meta-Environment.This paper first recalls how programming languages can be specified in Asf+Sdf. It then analyses the apparent difficulty of reusing the specifications of individual constructs, and considers some alternative styles of semantics that have been supported using Asf+Sdf and its Meta-Environment. It is suggested that these alternative styles could facilitate reuse when specifying programming languages in Rascal, which has superseded Asf+Sdf.

Related Topics
Physical Sciences and Engineering Computer Science Computational Theory and Mathematics
Authors
,