A Tale of Two LISPs
Robert McIntyre, Duncan Townsend
No enrollment limit, no advance sign up
Participants welcome at individual sessions (series)
Prereq: The ability to appreciate true beauty
TL;DR: LISP is awesome. We will convince you why. If you want to learn what LISP is all about, then this is the class for you! We will tell you why LISP _really_ is the language you want to program in. LISP is a functional programming language with a syntax that easily lends itself to manipulating code as data. It is also one of the oldest programming languages still in widespread use (preceded only by FORTRAN). The first class will cover the history of LISP from John McCarthy's original S-expressions, through Lisp Machine Lisp, Common Lisp, Scheme, and Clojure. You will see several REPL sessions with historic LISPs, including a working Symbolics 3630 Lisp Machine (new in 1986). You will also see sessions with more modern LISPs: Common Lisp, Dr. Racket, elisp, Clojure, and Scheme. The second class will cover one of the newest additions to the LISP family, Clojure. Clojure is "LISP reloaded" and designed to run on the Java Virtual Machine and leverage all of the libraries accessible from Java. It makes concurrent programming on today's multi-core processors easier by offering Software Transactional Memory, multi-threaded higher order functions like pmap, futures, and atomic data. We'll develop a small web application (the Dice of Doom game from Land of Lisp by Conrad Barski, MD) using Clojure to demonstrate these concepts.
Contact: Robert L McIntyre, sipb-iap-lisp@mit.edu
Sponsor: Student Information Processing Board
Cosponsor: Electrical Engineering and Computer Science
History of LISP
Robert McIntyre, Duncan Townsend
We will cover the history of LISP from John McCarthy, through Lisp Machine Lisp, Common Lisp, Scheme, and Clojure. You will see several REPL sessions with historic LISPs, including a working Symbolics 3630 Lisp Machine (new in 1986). You will also see sessions with more modern LISPs: Common Lisp, Dr. Racket, elisp, Clojure, and Scheme. We will discuss the differences between them.
Tue Jan 17, 07pm-09:00am, 4-237
Clojure
Robert McIntyre, Duncan Townsend
Clojure runs on the JVM and can access all the Java libraries. It makes concurrent programming easier by offering Software Transactional Memory, multi-threaded higher order functions like pmap, futures, and atomic data. By using structure-sharing for all of its primitives it, also lets you use immutable data structures efficiently. We'll develop a small web app (Dice of Doom by Conrad Barski) to demonstrate this.
Thu Jan 19, 07-09:00pm, 4-237
Latest update: 03-Jan-2012
|
|