About Askemos · design notes · documentation · news · download · On CD · thanks · forum · support
AskemosServer · DSSSL · LISP · LLD · NameSpaceDSSSL · ProjectsOnThePlate

ProgrammingLanguageScheme

Scheme

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

http://www.schemers.org/ - 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

http://www.church-project.org/

There is a nice paper on use of continuations: http://jerry.cs.uiuc.edu/~plop/plop2001/accepted_submissions/PLoP2001/dferguson0/PLoP2001_dferguson0_1.pdf and an overview on the discovery of continuations: http://citeseer.nj.nec.com/reynolds93discoveries.html, Dave Herman A Schemer's Introduction to Monads.

Highlights

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 http://okmij.org/ftp/Scheme/callcc-calc-page.html .

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 http://www.cs.iastate.edu/~leavens/ComS342-EOPL2e/docs/ code is here http://www.cs.iastate.edu/~leavens/ComS342-EOPL2e/lib/

http://pysch.sourceforge.net/

Tools

There are several tools to easy the task of documenting Scheme (and LISP) code, e.g, http://youpou.lip6.fr/queinnec/WWW/l2t.html also Elucidative Programming http://www.cs.auc.dk/~normark/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!

Libraries

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 ftp://titan.cs.rice.edu/public/wright/match.tar.Z

Schematics Scheme libs primarily for plt scheme http://schematics.sourceforge.net/

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

Editors

emacs mode

schemeway for eclipse





border
last modification: Tue, 04 Nov 2008 20:56:48 +0100
authors: jfw, hgm,
document identifier: A849640f672ed0df0958abc0712110f3c
delivered to public at Tue, 18 Nov 2008 23:00:11 +0100
short comments display (1)


rss

pdf :: context view

search



18 Nov 2008StorageAdaptor
18 Nov 2008PStoreStorageAdapt
18 Nov 2008OperationTips
15 Nov 2008PCRE
04 Nov 2008ProgrammingLanguag
01 Okt 2008SystemRequirements
09 Sep 2008RelatedProjects
23 Jul 2008ProjectsOnThePlate
23 Jul 2008ModuleStructure05
17 Jun 2008NEWS
17 Jun 2008HTML
17 Jun 2008ACM
22 Mai 2008HTTP
22 Mai 2008BOSH
10 Mai 2008AskemosBibliograph
10 Mai 2008JerrysDreamAbstrac
20 Apr 2008XSLT
11 Mar 2008CodingStyle
10 Mar 2008
09 Mar 2008MIMEConverter
BSD
07 Mar 2008XML
06 Mar 2008SRFI
01 Mar 2008RFC4810
01 Mar 2008RFC4998
01 Mar 2008KondratieffWerk
04 Jan 2008service-level
04 Jan 2008NameSpaceDSSSLinde
24 Jun 2004KommunikationsInfr
BOINC






Add


About Askemos · design notes · documentation · news · download · On CD · thanks · forum · support
Web Design by Schwill Dresden