Scheme 48

It is called "Scheme 48" because the first version was written in 48 hours in August 1986.

[citation needed] Scheme 48 uses a virtual machine to interpret the bytecode, which is written in a restricted dialect of Scheme called PreScheme, which can be translated to C and compiled to a native binary.

But it was restrictive – it required you to write in a fashion that allowed complete Hindley-Milner static type inference, and all higher-order procedures were beta-substituted away at compile time, meaning you could *straightforwardly* translate a prescheme program into "natural" C code with C-level effiency [sic].

And you could debug your prescheme programs in the interactive Scheme development environment of your choice, before flipping a switch and translating to C code, because prescheme was just a restricted Scheme.

Prescheme sort of died – beyond the academic paper he wrote, Kelsey never quite had the time to document it and turn it into a standalone tool that other people could use (Ian Horswill's group at Northwestern is an exception to that claim – they have used preschemeThis free and open-source software article is a stub.