addressalign-toparrow-leftarrow-rightbackbellblockcalendarcameraccwchatcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobegmailgoogleimageimagesinstagramlinklocation-pinmagnifying-glassmailminusmoremuplabelShape 3 + Rectangle 1outlookpersonplusprice-ribbonImported LayersImported LayersImported Layersshieldstartickettrashtriangle-downtriangle-uptwitteruseryahoo

Programming Languages Book (free pdf)

From: Paul L.
Sent on: Saturday, October 22, 2011 2:45 PM
At the last reading club I mentioned the textbook for a great course on programming language design (particularly functional) I took at UBC (CS 311). 


If you work through the first 11 chapters, you'll implement a lisp-like language from scratch including the parser, AST, etc.. and add things like closures, laziness, recursion, vals/vars (they call them something different mutable boxes and immutable or something), and bunch of other neat ideas I can't remember off the top of my head.

In the lisp tradition, scheme/racket is the host language you write your interpreter in, and the language you implement is very lisp-like. 

Definitely one of the best courses I took in my undergrad. 

(after the course I spent a couple days implementing a smiliar play-lisp in javascript as the host language, here's the result: https://github.com/paulitex/Wisp ) 

-- 
Paul Lambert
c:[masked]
@paulitex

Our Sponsors

  • Bernie A.I.

    Helps Scala members through admin assistance and refreshing beverages.

  • Hootsuite

    Hootsuite helps Scala with awesome topics and Meetup space.

  • Unbounce

    Unbounce helps Scala members through meetup space and yummy refreshments

People in this
Meetup are also in:

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy