Results 1 -
6 of
6
Language Definition and Implementation
- Australian Computer Science Communications
, 1989
"... Many languages have been designed to date, of which a large number have never been implemented and the majority are specified in a very imprecise manner. For a language to receive serious consideration among the computer science community, it generally must have been implemented after its design. Ho ..."
Abstract
-
Cited by 6 (4 self)
- Add to MetaCart
Many languages have been designed to date, of which a large number have never been implemented and the majority are specified in a very imprecise manner. For a language to receive serious consideration among the computer science community, it generally must have been implemented after its design. However, it is the matter of a precise definition which is often forgotten or ignored and yet it is one of the most important aspects of a language when considered in the context of the evolution of programming languages. The language definition is the vehicle by which the rules regarding syntax and semantics are clearly stated and conveyed. It allows for the comparison of languages independent of any implementation or machine architecture. Furthermore, by employing techniques with a formal basis, it is also possible to use the language definition as the source for the automatic generation of a language implementation. This strongly suggests that language designers should precisely define thei...
A Model of Communication in Ada using Shared Data Abstractions
- Advances in Computing and Information -- ICCI'90
, 1990
"... ions Chris Marlin & Michael Oudshoorn Department of Computer Science The University of Adelaide G.P.O. Box 498 Adelaide, S.A. 5001 Australia Dennis Freidel Hewlett Packard -- Colorado Networks Division 3404 East Harmony Road Fort Collins, Colorado 80525 U.S.A. Abstract Language-level concurren ..."
Abstract
-
Cited by 6 (5 self)
- Add to MetaCart
ions Chris Marlin & Michael Oudshoorn Department of Computer Science The University of Adelaide G.P.O. Box 498 Adelaide, S.A. 5001 Australia Dennis Freidel Hewlett Packard -- Colorado Networks Division 3404 East Harmony Road Fort Collins, Colorado 80525 U.S.A. Abstract Language-level concurrency is becoming more widely available in programming languages, placing parallel programming features in the hands of many programmers for the first time. Unfortunately, the precise semantics of these features is frequently not well understood, principally because of the informal way in which such features are described. Typical of such informal description techniques is the manner in which technical English is used in the Ada Language Reference Manual to define the tasking facilities of Ada. This paper describes a formal model of the intertask communication aspect of the programming langauge Ada. The model is an information structure model whose precision is based on the use of shared data a...
Extensible Attribute Grammars
, 1992
"... This report introduces a new idea to make attribute grammars (AG) extensible. Both the context-free grammar and the attribution system of an AG may be extended. This concept is a valuable structuring technique when defining language-based programming environments or compilers. For instance, it allow ..."
Abstract
-
Cited by 4 (3 self)
- Add to MetaCart
This report introduces a new idea to make attribute grammars (AG) extensible. Both the context-free grammar and the attribution system of an AG may be extended. This concept is a valuable structuring technique when defining language-based programming environments or compilers. For instance, it allows passes of a multipass compiler to be decomposed into different grammar levels, which renders the definition much clearer. Another application consists of defining an interface for an external tool (browser) on an independent grammar level neatly separated from the actual language definition. The concept of extensible attribute grammars is first introduced using a formal model, and thereafter practical examples demonstrate possible applications.
Modelling Communication in Ada with Shared Data Abstractions
, 1998
"... ions Dennis Freidel Hewlett Packard -- Colorado Networks Division Chris Marlin yz & Michael Oudshoorn y The University of Adelaide April 30, 1998 Abstract Descriptions of parallel programming languages are typically presented in an entirely informal manner; similar informal descriptive techni ..."
Abstract
-
Cited by 3 (3 self)
- Add to MetaCart
ions Dennis Freidel Hewlett Packard -- Colorado Networks Division Chris Marlin yz & Michael Oudshoorn y The University of Adelaide April 30, 1998 Abstract Descriptions of parallel programming languages are typically presented in an entirely informal manner; similar informal descriptive techniques are usually also the basis of comparisons between parallel programming languages. Such informal descriptions frequently lead to misunderstandings about the programming languages being described, and how they relate to one another. In this paper, we use shared data abstractions, an extension of abstract data types for parallel programming, as the basis for a model of inter-task communication in the programming language Ada. This approach leads to a precise description of the inter-task communication facility of Ada, as well as offering a basis upon which to compare parallel programming languages. Categories and Subject Descriptors: D.3.1 [Programming Languages]: Formal Definitions and Th...
Generating an Implementation of a Parallel Programming Language from a Formal Semantic Definition
- Australian Computer Science Communications
, 1992
"... ATLANTIS is a tool for the semi-automatic generation of interpretive language implementations from formal semantic definitions. This tool was originally designed to facilitate the implementation of sequential programming languages and the present paper describes how it has been adapted to also gener ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
ATLANTIS is a tool for the semi-automatic generation of interpretive language implementations from formal semantic definitions. This tool was originally designed to facilitate the implementation of sequential programming languages and the present paper describes how it has been adapted to also generate implementations of parallel programming languages. ATLANTIS is founded on a layered, information structure model and this paper examines the changes introduced into each layer of the model, focussing on the structure of the generated parse tree and the nature of the parallel interpreter generated from the programming language definition. 1.Introduction As the demand for more reliable software increases, so too does the need for formal definitions of programming languages. The difficulty experienced by language designers is that existing formalisms offer little assistance in the language design and implementation process. In fact, formalisms such as attribute grammars, 9,21 denotational s...
on Language Descriptions Tools and Applications
, 2010
"... (European Joint Conferences on Theory and Practice of Software) organized in cooperation with ACM Sigplan. LDTA is an application and tool oriented forum on meta programming in a broad sense. A meta program is a program that takes other programs as input or output. The focus of LDTA is on generated ..."
Abstract
- Add to MetaCart
(European Joint Conferences on Theory and Practice of Software) organized in cooperation with ACM Sigplan. LDTA is an application and tool oriented forum on meta programming in a broad sense. A meta program is a program that takes other programs as input or output. The focus of LDTA is on generated or otherwise efficiently implemented meta programs, possibly using high level descriptions of programming languages. Tools and techniques presented at LDTA are usually applicable in the context of “Language Workbenches ” or “Meta Programming Systems ” or simply as parts of advanced programming environments or IDEs. The prelimiary proceedings include an extended abstract based on the invited talk by Jean-Louis Giavitto (“A Domain Specific Language for Complex Natural & Artificial Systems Simulations”) and the 11 contributed papers that were selected for presentation and the preliminary proceedings by the programme committee from 30 submissions (i.e., 37 % acceptance rate). Every submission was reviewed by at least three members of the program committee. In addition, the program committee sought the opinions of additional referees, selected because of their expertise on particular topics. The final selection of papers was made during the first week of February 2010. We would like to thank all of the authors who submitted papers to the workshop, and the members of the programme committee for their excellent work. The program committee did not meet in person, but carried out extensive discussions during the electronic PC meeting via EasyChair. We would also like to thank the LDTA organizing committee (Giorgios Robert Economopoulos and Jurgen Vinju) for their assistance and sound counsil, Torbjörn Ekman for contributing to the organization, and the ETAPS organization.

