Let statements and Extempore's Scheme

28 views
Skip to first unread message

Cian O'Connor

unread,
Oct 27, 2017, 4:43:14 PM10/27/17
to Extempore
Rereading my Scheme textbooks the following should be legal Scheme:

(let ([f +])
  (f 2 3))

equivalent to the following:


(let ((f +))
  (f 2 3))

However, while the latter works fine, the former doesn't.

Is this a bug in the interpreter?

Ben Swift

unread,
Oct 28, 2017, 2:21:59 AM10/28/17
to extemp...@googlegroups.com
Hi Cian

Extempore's scheme interpreter is based (a long time ago) on TinyScheme,
with significant modifications since then. Tinyscheme was meant to be
designed to be easily embeddable (header-only ish), and so it doesn't
necessarily have all the Scheme things, and unfortunately the best way
to figure out what it does/doesn't support is to run code and see (or
pore through include/Scheme.h).

The Scheme part of Extempore isn't going anywhere, and it's still really
useful as a "scripting" language for orchestrating xtlang stuff, but
there are some known issues. Probably easiest to stick to vanilla Scheme
stuff, but feel free to ask away on the list and if there are relatively
simple fixes then we can certainly have a crack at them.

Cheers,
Ben
Reply all
Reply to author
Forward
0 new messages