Add initial draft of main page
This commit is contained in:
parent
ee87e724af
commit
d360cefe9b
|
@ -0,0 +1 @@
|
||||||
|
/www/index.html
|
|
@ -0,0 +1,59 @@
|
||||||
|
# PreScheme
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
PreScheme (also spelled Pre-Scheme) is a statically typed dialect of
|
||||||
|
Scheme that gives the programmer the efficiency and low-level machine
|
||||||
|
access of C while retaining many of the desirable features of Scheme.
|
||||||
|
|
||||||
|
The PreScheme compiler makes use of type inference, partial evaluation
|
||||||
|
and Scheme and Lisp compiler technology to compile the problematic
|
||||||
|
features of Scheme, such as closures, into C code without significant
|
||||||
|
run-time overhead. Use of such features in PreScheme programs is
|
||||||
|
restricted to those cases that can be compiled into efficient code.
|
||||||
|
|
||||||
|
Type reconstruction is done using a modified Hindley/Milner algorithm
|
||||||
|
that allows overloaded user-defined functions.
|
||||||
|
|
||||||
|
All top-level forms in PreScheme programs are evaluated at compile
|
||||||
|
time, which gives the user additional control over the compiler's
|
||||||
|
partial evaluation of a program.
|
||||||
|
|
||||||
|
PreScheme has been implemented and used to write a byte-code
|
||||||
|
interpeter and associated support code for a complete Scheme
|
||||||
|
implementation.
|
||||||
|
|
||||||
|
## Manuals
|
||||||
|
|
||||||
|
* [The Nearly Complete Scheme48 PreScheme 1.3 Reference Manual](1.3/)
|
||||||
|
|
||||||
|
## Implementations
|
||||||
|
|
||||||
|
### Scheme 48
|
||||||
|
|
||||||
|
### VLISP
|
||||||
|
|
||||||
|
No known public release.
|
||||||
|
|
||||||
|
### SPS
|
||||||
|
|
||||||
|
SPS is a Pre-Scheme to (GNU) C compiler written in Pre-Scheme.
|
||||||
|
|
||||||
|
Written in 1999.
|
||||||
|
|
||||||
|
[GitHub](https://github.com/nineties-retro/sps)
|
||||||
|
|
||||||
|
## Research papers
|
||||||
|
|
||||||
|
From the MITRE Corporation:
|
||||||
|
|
||||||
|
* A Verified Compiler for Pure PreScheme (1991)
|
||||||
|
* The VLISP PreScheme Front End (1992)
|
||||||
|
* A Verified Run-Time Structure for Pure PreScheme (1992)
|
||||||
|
* The Revised VLISP PreScheme Front End (1993)
|
||||||
|
* The VLISP Verified PreScheme Compiler (1995)
|
||||||
|
* A Verified Compiler for Multithreaded PreScheme (1996)
|
||||||
|
|
||||||
|
From Kelsey:
|
||||||
|
|
||||||
|
* Pre-Scheme: A Scheme Dialect for Systems Programming (1997)
|
Loading…
Reference in New Issue