Re: 'Learning Compilers': Functional vs. Imperative Host?

Jim Witte <jswitte@bloomington.in.us>
3 Apr 2004 09:10:17 -0500

          From comp.compilers

Related articles
'Learning Compilers': Functional vs. Imperative Host? jswitte@spam.bloomington.in.us (Jim Witte) (2004-03-19)
Re: 'Learning Compilers': Functional vs. Imperative Host? torbenm@diku.dk (2004-03-26)
Re: 'Learning Compilers': Functional vs. Imperative Host? jswitte@bloomington.in.us (Jim Witte) (2004-04-03)
Re: 'Learning Compilers': Functional vs. Imperative Host? jswitte@bloomington.in.us (Jim Witte) (2004-04-03)
Re: 'Learning Compilers': Functional vs. Imperative Host? jswitte@bloomington.in.us (Jim Witte) (2004-04-03)
| List of all articles for this month |

From: Jim Witte <jswitte@bloomington.in.us>
Newsgroups: comp.compilers
Date: 3 Apr 2004 09:10:17 -0500
Organization: IU
References: 04-03-070
Keywords: courses, functional
Posted-Date: 03 Apr 2004 09:10:17 EST

>[Scheme is a great language for compiler courses because you can
>concentrate on the data structures and algorithms without getting
>bogged down in manual storage management and pointer bugs like you do
>in C and C++. I think the reason you see few commercial compilers
>written in Scheme or Lisp is partly that they're still seen as
>languages for AI, not for real work, and partly (a big part) that few


    Yeah, here at IUB we kind of have a 'cult of Scheme' and a 'cult of
Java', and one of the Java profs said once, "Yeah, Scheme was a great
language.. back in the 60's.." implying that it hasn't changed. Well,
it's gone through 5 revisions, and RSR6 is due out soon - I *so* want
them to standardize macro syntax, so that innocent looking macros using
syntax-case that work under Chez will also work under PLT


    Another nice thing would be to standardize an (import scheme)
expression like in Chez, to access top-level bindings from within a
macro, so that I can redefine the quasiquote and still refer to the
top-level quasiquote. To do this in PLT, I have to resort to a module,
and then renaming a binding from the module - an ugly hack for something
so simple..


>Scheme or Lisp systems make it easy to package up program to run from
>a command line like you can with C programs. -John


    Well, *are* there any free compilers out there that will compile Scheme
down to machine language? Chez will, but it costs money. Petite Chez
won't, so it's out. DrScheme sort of will, although I think it just
produces a bytecode-like .zo file that still needs the MrEd/MzScheme
libraries to run.. I'm not sure *why* DrScheme won't compile down to
machine-code, as a lot of the people who work on it did work at IUB (I
think, I've heard a lot about them from Dr. Friedman), and here we have
one course that teaches how to write a compiler that will produce
machine-code, and another that will teach you how to get that compiler to
be able to compile *itself* (the advanced compilers course).


Jim


Post a followup to this message

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