Change search
ReferencesLink to record
Permanent link

Direct link
A Prolog compiler and its extension for OR-parallelism
Number of Authors: 1
1990 (English)Report (Refereed)
Abstract [en]

This report describes algorithms for the compiler component of the Aurora Or-Parallel Prolog system. The compiler translates one Prolog clause at a time into a sequence of abstract instructions. The instruction set is based on the sequential Warren Ab- stract Machine (WAM) with extensions for full Prolog, shallow backtracking, memory management and garbage collection, and for the SRI model of or-parallel execution of Prolog. Most of the described algorithms apply to compilation of sequential Prolog programs. The extensions introduced to support or-parallelism are minor, and concern pruning operators (cut and commit) and compile-time allocation of binding array offsets for permanent variables (generalised environment trimming). Code generation proper is kept separate from register allocation, and uses heuristics for finding a compilation order which minimises the number of register-register copies. After such copies have been coalesced where possible, register allocation is performed in a single pass over the intermediate code. The various compilation phases are described in detail, and the implementation is compared with some other compilers.

Place, publisher, year, edition, pages
Kista, Sweden: Swedish Institute of Computer Science , 1990, 1. , 65 p.
SICS Research Report, ISSN 0283-3638 ; R90:06
National Category
Computer and Information Science
URN: urn:nbn:se:ri:diva-21338OAI: diva2:1041372
Original report number R90006.Available from: 2016-10-31 Created: 2016-10-31

Open Access in DiVA

fulltext(327 kB)3 downloads
File information
File name FULLTEXT01.pdfFile size 327 kBChecksum SHA-512
Type fulltextMimetype application/pdf

Computer and Information Science

Search outside of DiVA

GoogleGoogle Scholar
Total: 3 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

ReferencesLink to record
Permanent link

Direct link