Byzantine Askemos Language Layer

ProgrammingLanguageScheme :: pdf :: context view

inbound links:


Scheme is a small, extendable programming language defined upon a core of denotational semantics. In a way it's not really a language at all, since it has almost no syntax and the programmer is expected to think more at the structural level and less in terms of language idioms. Therefore two Scheme implementations are usually as different as Python compared to Java (or any other example - you name it).

General and background Information - find pointers standards SRFI's etc. there.

It's time to learn Scheme. A turtorial read more.

Suggested for beginners: Riastradh's Lisp Style Rules a guide to Lisp style, written by Taylor R. Campbell; parts are focussed on or specific to Scheme.

To learn about hygienic macros: Syntax-rules Primer for the Merely Eccentric.

Operational Semantics, administrative normal form

There is a nice paper on use of continuations: and an overview on the discovery of continuations:, Dave Herman A Schemer's Introduction to Monads.


Anton van Straaten announced an interpreter based of just the 6 basic operations evaluation of constants, evaluation of variables, procedure application, lambda, if, and set! . (Whereby set! is not striktly required and not present in the strict functional subset "DSSSL" as implemented in Askemos.)

Oleg's beta evaluator .

alexpander r5rs macro expander.

Kernel is a conservative, Scheme-like dialect of Lisp in which everything is a first-class object. ... Kernel eliminates the non-orthogonality problem by breaking the classical lambda constructor into two orthogonal parts, one of which is the Kernel constructor for first-class operatives.

How to Write Seemingly Unhygienic and Referentially Opaque Macros with Syntax-rules

A typechecker for Scheme code is here

Tail Recursion with Dynamic Scope


There are several tools to easy the task of documenting Scheme (and LISP) code, e.g, also Elucidative Programming and should go to ProjectsOnThePlate.

The first usable implementation (version 0.5 and above) of Askemos where based on RScheme. With the support of Felix Winkelmann, a port to the TargetPlatformchicken is currently the forthcoming.

#f small self contained compiler for a subset of Scheme.

scheme-complete.el provides real-time, lexical-scope aware type inferencing tab-completion for any R5RS scheme, with extensibility for implementation-specific features.

module system

There's a module systemin R6RS, (from here)

However the Scheme community is split up over the merits of r6rs. Some folks propose a err5rs as a practical migration path from the R5RS to some future standard that supersedes both the R5RS and the R6RS.

The StandardML module system as provided by chicken looks promising. Others to evaluate are PLT, Scheme 48, bigloo (more?). Beware: some don't allow rename on import, something you need!


Scheme Now!, also know as Snow, is a repository of Scheme packages that are portable to several popular implementations of Scheme.

A rscheme port of the pattern matcher (syntax exension) from Andrew K. Wright and Bruce F. Duba is distributed with the Askemos code since version 0.7.2. Original at

Schematics Scheme libs primarily for plt scheme

There are some things to say about Scheme. Most are rather philosophical, oncerned with long term availibility. (Aka "ease of implementation".) I ommit writing this up and refer you to people more capable at that.

Anyway I need a place, where to put some pointers.

A library of Scheme related research


emacs mode

schemeway for eclipse

Last modification: Fri, 24 Dec 2010 23:20:40 +0100

Author(s): jfw,

Document number A26b5619be8d5e3348cca356acfc8efea delivered to public at Mon, 18 Nov 2019 16:47:03 +0100

short comments

add comment