Often when I have a really hard problem to solve I resort to Scheme for
the powerful set of patterns that it supports.
Here are some tools that I have accumulated and here are two adequate Scheme systems.
All my recent work in Scheme has been in the context of this Scheme repository and module system.
Just a few things I don’t like about Scheme.
Pure Scheme
My simple do loop program
Streams in Scheme
Universal equal? for Scheme
Transposing a ragged matrix
Persistent Stack Frames
Tax
Code to enumerate free variables in a Scheme expression
Synergy
( (lambda (arg) (list arg (list (quote quote) arg)))
(quote (lambda (arg) (list arg (list (quote quote) arg)))))
(define (C a b) (if (zero? a) 1 (/ (* (C (- a 1) b) (+ 1 (- b a))) a))) ; b Choose a
Applied Scheme
Some number theory,
Scheme code for finding primes
RSA (4 times standard speed), Extended Euclidean Algorithm
A matrix inversion routine not tied to floating point scalars.
Finite fields
Set abstraction for totally ordered types
Merging and Sorting
Multivariate polynomials,
Multinomials and Differential Geometry
Random Normal Deviate generator;
requires rand31 from here.
Generalizing Complex Numbers.
Dynamic creation of new types.
Clifford Arithmetic
Sneaking up on Multiple user Scheme,
meta stuff
Church’s numbers
Multi precision reals for sin and π
Scheme Theory
Scheme in a capability context
Comparison of Scheme and Caml
Poking at MzScheme
proposed error semantics
Dangerous eval
Sensory Scheme
Coroutines