LAmbda calculus evaluator (interactive)

Justin Sheehy dworkin at ccs.neu.edu
Sat Apr 22 18:27:07 EDT 2000


Andrew Cooke <andrew at andrewcooke.free-online.co.uk> writes:

> ok, is this one of those pedantic geek jokes?

No, it was intended to be helpful, in a rather obvious way.  

It is clear that you wanted something more, but I was answering what
looked like a stand-alone question about the interactiveness of ocaml
in the midst of your post.

> ...but if not, i thought the (unquoted) context made clear that i was
> talking about programs that manipulated expressions in lambda calculus
> (so a "not interactive" program simply takes an expression and follows
> some evaluation strategy as far as possible; an "interactive"
> program allows me to step reduction by reduction, do abstractions, etc).
> in other words, manipulate the appropriate ast.

Ah.  Well, that's not at all what most people that I know mean by the
distinction between "interactive" and "non-interactive" when referring to
a language implementation.

If I refer to an interpreter (or compiler, whatever) as "interactive",
I mean simply that it has an read-eval-print loop that one can
interact with.

The standard Python implementation is like this, as is ocaml (as shown
in my previous response to you) and several other languages.  Many
other languages (C++, Perl, many others) typically do not have an
interactive interpreter.  One can refer to their implementations as
non-interactive.

With regard to the lambda calculus debugger you seem to be looking
for, I'm not sure exactly what you'd want it to look like.  Even if I
did, I don't know if I'd be able to direct you to one.

However, to re-answer the sub-question that I thought I answered
before: ocaml is (or at least can be) interactive.

<wink>

-Justin

 




More information about the Python-list mailing list