• Corpus ID: 59750669

Use of Prolog for developing a new programming language

  title={Use of Prolog for developing a new programming language},
  author={Joe L. Armstrong and S. R. Virding and Mike Williams},
This paper describes how Prolog was used for the development of a new concurrent real-time symbolic programming language called Erlang. [] Key Method The direct implementation of Erlang was loosely based on the WAM and made by writing a Prolog compiler from Erlang to a new abstract machine and an emulator for the abstract machine in 'C'. The instruction set for the abstract machine was rst prototyped in Prolog-nally the compiler was rewritten in Erlang, thus totally removing any dependency on Prolog. This…
contributed articles Erlang
The key design criteria behind the Erlang language are outlined, showing how they are reflected in the language itself, as well as in programming language technology used since 1985.
a Survey of the Language and its Industrial Applications
The Erlang programming language is described and some of the applications which have been programmed in Erlang are discussed, focusing on three applications which are commercial products.
eJason: An Implementation of Jason in Erlang
In this paper we describe eJason, a prototype implementation of Jason, the well-known agent-oriented programming language, in Erlang, a concurrent functional programming language. The reason for
A history of Erlang
This paper describes the history of Erlang, a language designed for writing concurrent programs that "run forever" that has mechanisms to allow programs to change code "on the fly" so that programs can evolve and change as they run.
Making reliable distributed systems in the presence of software errors
It is argued how certain of the requirements necessary to build a fault-tolerant system are solved in the language, and others are solve in the standard libraries, which form a basis for building fault-Tolerant software systems.
The development of Erlang
This paper describes the development of the programming language Erlang during the period 1985--1997.Erlang is a concurrent programming language designed for programming large-scale distributed soft
wxErlang - a GUI library for Erlang
This report describes the Erlang GUI library wxErlang, it explains both how a programmer can use the library to write GUI applications and how the library itself has been implemented. WxErlang is a
Concurrent Functional Programming for Telecommunications : A Case Study of Technology Introduction
This thesis deals with two important topics: The use of the best possible technology in the development of telecommunications systems in a world of rapid change and increasing competition and the introduction and exploitation of functional programming in industry.
Applications of Logic Programming in Software Engineering
It is shown that logic programming ooers useful methods and techniques to software engineers and a number of software development tools based on logic programming.
Concurrency Oriented Programming in Erlang
Using essentially sequential programming languages to write concurrent programs is difficult and leads to the notion that concurrent programming is difficult; indeed writing concurrent programs in a


Using PROLOG for rapid prototyping of telecommunication systems
The work described in the paper builds upon some of the conclusions of Armstrong et.
ERLANG - an experimental telephony programming language
This work presents an experimental programming language called ErIang which is suitable for programming telephony applications and introduces the language by a series multiple examples which show how both sequential and concurrent activities can be programmed.
No Silver Bullet Essence and Accidents of Software Engineering
This article shall try to show why there is no single development, in either technology or management technique, that by itself promises even one order-of-magnitude improvement in productivity, in reliability, in simplicity.
A rational design process: How and why to fake it
It is proposed that, although designing a real product in that way will not be successful, it is possible to produce documentation that makes it appear that the software was designed by such a process.
Warren's Abstract Machine: A Tutorial Reconstruction
Unification - pure and simple flat resolution Prolog optimizing the design conclusion. Appendices.
software prototype using a real-time declarative language Persson Ericsson (in preparation) WA83] Warren, David, H.D. An abstract Prolog instruction set
  • software prototype using a real-time declarative language Persson Ericsson (in preparation) WA83] Warren, David, H.D. An abstract Prolog instruction set
  • 1983
New Concepts in Parallel Processing. Ian Foster and Steven Taylor
  • New Concepts in Parallel Processing. Ian Foster and Steven Taylor
  • 1989
PARLOG: Parallel programming in logic Department of Computing, Imperial College. London
  • Experiments with Programming Languages and Techniques for Telecommunication Applications. Proc. 6th
  • 1985