On the translation of Prolog to a conventional language (ProtoCola).
Norfolk, Andrew Mark. (1990) On the translation of Prolog to a conventional language (ProtoCola). Doctoral thesis, University of Surrey (United Kingdom)..
|
Text
10147888.pdf Available under License Creative Commons Attribution Non-commercial Share Alike. Download (6MB) | Preview |
Abstract
Over the past few years much interest has been shown in the computer language Prolog, a fifth generation language. Since its beginnings in the early 1970's more and more implementations of the language have been written each with their own particular characteristics. One of the main drives has been in trying to achieve more efficient implementations in terms of speed and use of storage space. Many implementations have been interpreters and only a relatively few compilers, which generally tend to be faster than interpreters, have been written, especially for machines other than personal computers. Garbage collectors are present in most systems and for large programs can make real time processing difficult. Prolog itself is a markedly different language to conventional languages like Pascal, Algol, C etc. and linking with existing software written in these languages can also be difficult. ProtoCola is an attempt to surpass some of these difficulties in that it takes a Prolog program and translates it into an equivalent (i.e. when run produces the same results as the Prolog program) Pascal program. The advantages come from the facts that: it is compliable for fast code; no garbage collector is needed; links to existing software are easier to achieve. As an added advantage it is highly portable since it is written in Standard Pascal. The use of 'continuations' to mimic the control flow and search strategy of Prolog easily and successfully has been a key factor in producing such an implementation. The idea of their use in such a way comes from the existing Gener8 system which produces a parser or generator of a language as defined by an input grammar specification. This thesis describes my work in improving the Gener8 system and gives a full description of the ProtoCola system which I have designed and developed.
Item Type: | Thesis (Doctoral) | ||||||||
---|---|---|---|---|---|---|---|---|---|
Divisions : | Theses | ||||||||
Authors : |
|
||||||||
Date : | 1990 | ||||||||
Contributors : |
|
||||||||
Depositing User : | EPrints Services | ||||||||
Date Deposited : | 09 Nov 2017 12:15 | ||||||||
Last Modified : | 20 Jun 2018 10:49 | ||||||||
URI: | http://epubs.surrey.ac.uk/id/eprint/843652 |
Actions (login required)
![]() |
View Item |
Downloads
Downloads per month over past year