Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.compilers > #984

Re: Intermediate forms (again?): worthwhile?

From Chris Dollin <eh@electrichedgehog.net>
Newsgroups comp.compilers
Subject Re: Intermediate forms (again?): worthwhile?
Date 2011-01-26 17:51 +0000
Organization Compilers Central
Message-ID <11-01-116@comp.compilers> (permalink)
References <11-01-045@comp.compilers>

Show all headers | View raw


Tony wrote:

> Well, do tell what Pepper I has in common with C then.

It's an imperative programming language with no
special support for concurrency.

> What compromises were made to the design because
> of the choice of implementation?

To the design of Pepper? None. Pepper was designed
as a simplified Pop11; the implementation was required
to fit the language. The first implementation was as a
byte-coded interpreter (written in C); although it worked
it was a tad slow [1]. The Pepper-to-C translator was built
so as to have something rather faster, and in that it
succeeded.

As for the type system, that of Pepper and of C are pretty
much as different as that of Lisp and C: for starters,
Pepper has dynamic (aka latent | run-time | tagged) types.

[I never got around to writing the garbage-collector either;
 again, I had some design sketches but never commited
 them to code. It wasn't that it couldn't be done, it was that
 I had other things to do.]

Chris

[1] Partly because the VM primitives were designed to
    map effectively into machine code, rather than being
    at the Pepper language level, because of an unfulfilled
    ambition to have Pepper running as native code. Since
    I had three different target architectures at the time
    (x86, PA-RISC, and ARM) this would have meant three
    different machine-code generators ... there's only one of me.

--
Far-Fetched Hedgehog
Nit-picking is best done among friends.

Back to comp.compilers | Previous | Next | Find similar


Thread

Re: Intermediate forms (again?): worthwhile? Chris Dollin <eh@electrichedgehog.net> - 2011-01-26 17:51 +0000

csiph-web