IAP Independent Activities Period
overview participate organize offerings calendar  
for-credit subjects non-credit activities by category non-credit activities by sponsor non-credit activities by date

IAP 2012 Activity


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


MIT  
Massachusetts Institute of Technology
Home | Overview | Participate | Organize | Offerings | Calendar | Search
Comments and questions to: iap-www@mit.edu Academic Resource Center, Room 7-104, 617-253-1668
Last update: 7 Sept. 2011