Re: Interpreters & Intermediate languages

khorsell@ee.latrobe.edu.au (Kym Horsell)
Thu, 21 Apr 1994 05:35:58 GMT

          From comp.compilers

Related articles
Interpreters & Intermediate languages elan@tasha.cheme.cornell.edu (1994-04-13)
Re: Interpreters & Intermediate languages pardo@cs.washington.edu (1994-04-13)
Re: Interpreters & Intermediate languages leichter@thorium.rutgers.edu (1994-04-19)
Re: Interpreters & Intermediate languages khorsell@ee.latrobe.edu.au (1994-04-21)
Re: Interpreters & Intermediate languages bosullvn@maths.tcd.ie (Bryan O'Sullivan) (1994-04-22)
| List of all articles for this month |
Newsgroups: comp.compilers
From: khorsell@ee.latrobe.edu.au (Kym Horsell)
Keywords: interpreter, translator
Organization: Department of Electronic Engineering, La Trobe University
References: 94-04-092
Date: Thu, 21 Apr 1994 05:35:58 GMT

elan@tasha.cheme.cornell.edu (Elan Feingold) writes:
>I'm looking to write a fast emulator for the Z80. I want to use dynamic
>translation.


Partial evaluation technology is probably what you need.


There are research-oriented books (the area is till quite new) but Pagan
has a nice little book illustrating how to turn interpreters written is
Pascal into straight code. His methods are manual, but despite their
simplicity are reasonably good. I can get an exact ref if your library
computer is lacking an index. ;-)


I think (from memory) he cites a stack-language interpreter + stack code
for X ==> Pascal program for X running about an order of mag faster than
the original interpreter + X (as one would usually expect).


Hence to emulate your Z80 first write an interpreter for the Z80 and then
follow Pagan's methods to turn it into a program generator. Thence feed
the prog-gen your Z80 code and get Pascal code for same task; thence
compile into your favourite machine lang via Pascal comp.


-kym
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.