Skip to content

Instantly share code, notes, and snippets.

@steshaw
Last active August 29, 2015 14:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save steshaw/035d9647e236a85e07c0 to your computer and use it in GitHub Desktop.
Save steshaw/035d9647e236a85e07c0 to your computer and use it in GitHub Desktop.

I’m an old Lisp enthusiast who has many loves: Scheme with Dylan being my favourite dialect and Racket a close second; Common Lisp as implementations are often quite fast with native compilers such as SBCL; and Shen by Dr Mark Tarver which is a very innovative Lisp including pattern matching (ala ML), opt-in lazy evaluation, static type checking, integrated Prolog language and runs on top of multiple “lisp” implementations (including CLisp, SBCL, Clojure, Scheme, Ruby, Python, JVM and JavaScript) — the only downside seems to be the complicated licence. I highly appreciate the work of early Lisp researchers, particularly the “Lambda Papers” such as Lambda the Ultimate Imperative, … Declarative, … GOTO … Opcode etc, and others on [first-class] continuations, macros, partial evaluation, staging, concurrency and distributed programming (Termite was light years ahead of it’s time). Discover all this research via Read Scheme.

Clojure has a lot to offer: a Lisp on the Java platform with [anonymous] functions, braces, macros; high-performance immutable data structures; streams with abstract seq interface; alternatives to typical Java concurrent programming techniques such as software transactions and agents; logic programming (core.logic and Datalog); Datomic (aka database-as-value); and ClosureScript — because JavaScript makes a better portable assembler than programming language (like C before it).

> wat
ReferenceError: wat is not defined
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment