A Prolog EmulatorThis note describes an efficient software emulator for the Warren Abstract Machine (WAM) Prolog architecture. The version of the WAM implemented is called Lcode. The Lcode emulator, written in C, executes the 'naive reverse' benchmark at 3900 LIPS. The emulator is one of a set of tools used to measure the memory-referencing characteristics and performance of Prolog programs. These tools include a compiler, assembler, and memory simulators. An overview of the Lcode architecture is given here, followed by a description and listing of the emulator code implementing each Lcode instruction. This note will be of special interest to those studying the WAM and its performance characteristics. In general, this note will be of interest to those creating efficient software emulators for abstract machine architectures.
Document ID
19930074153
Acquisition Source
Legacy CDMS
Document Type
Contractor Report (CR)
Authors
Tick, Evan (Stanford Univ. CA, United States)
Date Acquired
August 16, 2013
Publication Date
May 1, 1987
Subject Category
Computer Programming And Software
Report/Patent Number
CSL-TN-87-324NAS 1.26:192403NASA-CR-192403Report Number: CSL-TN-87-324Report Number: NAS 1.26:192403Report Number: NASA-CR-192403