Workshop on Program Transformations at Lambda Jam 2013
Scheme C++ Other
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
HW.md
INSTALL
NOTES.md
README.md
cps-auto.scm
cps-sol.scm
cps-work.scm
factorial-auto.scm
factorial-cps-tramp.scm
factorial-cps.scm
factorial-direct.scm
factorial-sol.scm
factorial-work.scm
fib-auto.scm
fib-cps-tramp.scm
fib-cps.scm
fib-direct.scm
fib-sol.scm
fib-work.scm
interp
lc-auto.scm
lc-cps-tramp.scm
lc-cps.scm
lc-direct.scm
lc-sol.scm
lc-work.scm
m-sol.scm
m-work.scm
minus1
pmatch.scm
run
scheme-to-c-lib.scm
scheme-to-c.rkt
scheme-to-c.scm
scheme.h
script.scm
sugar.scm
test-check.scm
tr

README.md

LambdaJam workshop on Program Transformations

We'll guide you in writing your own Scheme-to-C translator by demystifying the program transformations that make a higher-order functional program run on a spartan host. You'll learn about continuation-passing style, representation independence, registerization, and trampolining. We first illustrate the program transformations step-by-step on some Scheme programs, and then challenge you to automate the steps!