CMU Artificial Intelligence Repository
Similix: Self-Applicable Partial Evaluator for a Subset of
Scheme.
lang/scheme/impl/similix/
Similix is an autoprojector (self-applicable partial evaluator) for a
large higher-order subset of the strict functional language Scheme.
Similix treats source programs that use a limited class of
side-effects, for instance input/output operations. Similix handles
partially static data structures.
Similix is automatic: in general, no user annotations (such as
unfolding information) are required; user assistance may in some cases
be required to avoid looping, however. Similix gives certain
guarantees concerning the residual programs it generates: computations
are never discarded (partial evaluation thus preserves termination
properties) and never duplicated.
Similix is well-suited for partially evaluating interpreters that use
environments represented as functions and interpreters written in
continuation passing style. Since Similix is self-applicable,
stand-alone compilers can be generated from interpreters.
Similix is highly portable. It conforms to the IEEE and R4RS Scheme
standards, but it also runs under R3RS Scheme.
Origin:
ftp.diku.dk:pub/diku/dists/Similix.tar.Z
cs.indiana.edu:/pub/scheme-repository/imp/similix.tar.Z
Version: 5.0 (May 1993)
Ports: Similix runs in SCM, Chez Scheme and T3.1.
Copying: Copyright (C) 1993 Anders Bondorf
GNU GPL v2.
CD-ROM: Prime Time Freeware for AI, Issue 1-1
Author(s): Anders Bondorf, Olivier Danvy, and Jesper J{\o}rgensen
Contact: Anders Bondorf
DIKU, Department of Computer Science
University of Copenhagen
Universitetsparken 1
DK-2100 Copenhagen
Denmark
Keywords:
Authors!Bondorf, Authors!Danvy, Authors!J{\o}rgensen,
GNU GPL, IEEE P1178 Compatible, Partial Evaluation,
Programming Languages!Scheme, R3RS Compatible,
R4RS Compatible, Scheme!Implementations, Similix,
Univ. of Copenhagen
References:
A user's manual is included in the distribution.
Last Web update on Mon Feb 13 10:38:07 1995
AI.Repository@cs.cmu.edu