An experimental language to improve how we work with asynchronous systems in JavaScript. It runs on Node.js and in browsers.
Its core is a modified R5RS Scheme. It has tail-recursion and syntax-rules macros, and uses the core library from Heist. Data types are booleans #t/#f, numbers, symbols, strings, lists (a b c) and vectors #(a b c). Quasiquoting with '/`/,/,@ is supported.
Instead of call/cc, Fargo supports Ruby-style fibers for pausing and resuming async work. View source for an example using set-timeout. You can find out more over on GitHub.
(download "0.0.1-preview")
MIT licensed, © 2011 James Coglan.