Xref: utzoo comp.arch:6458 comp.lang.misc:1954 Path: utzoo!attcan!uunet!seismo!sundc!pitstop!sun!oliveb!Ozona!chase From: chase@Ozona.orc.olivetti.com (David Chase) Newsgroups: comp.arch,comp.lang.misc Subject: Re: Machine-independent intermediate languages Keywords: virtual machine language design Message-ID: <30151@oliveb.olivetti.com> Date: 4 Oct 88 22:43:47 GMT References: <853@goofy.megatest.UUCP> <905@sword.bellcore.com> <5933@june.cs.washington.edu> Sender: news@oliveb.olivetti.com Reply-To: chase@Ozona.UUCP (David Chase) Organization: Olivetti Research Center, Menlo Park, CA Lines: 19 In article <5933@june.cs.washington.edu> pardo@uw-june.UUCP (David Keppel) writes: >What other machines use virtual machine specifications? I know Prolog >has an abstract machine, but I don't think that it is in any way >required for a Prolog implementation. "BCPL has a simple semantic structure which is based on an idealized machine." (page 1, _BCPL -- the language and its compiler_, by Martin Richards.) The "machine language" usually used for this virtual machine (the compiler's intermediate code) was called OCODE. Another virtual machine was used to aid in bootstrapping systems; the machine language for this machine was called INTCODE. In case you are wondering, the virtual machine chosen for BCPL can present problems to efficient implementation on some machines. There was some paper in SP&E within the last decade or so describing a port of BCPL to a Burroughs machine, and the task was Not Pretty. David