BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Talks.cam//talks.cam.ac.uk//
X-WR-CALNAME:Talks.cam
BEGIN:VEVENT
SUMMARY:Inside the beast: GHC’s intermediate lambda language - Prof Simo
 n Peyton Jones\, Microsoft Research Cambridge
DTSTART:20160301T194500Z
DTEND:20160301T204500Z
UID:TALK64777@talks.cam.ac.uk
CONTACT:Swaraj Dash
DESCRIPTION:GHC translates all of Haskell into a tiny intermediate languag
 e called Core\, does a lot of optimisations on Core\, and then generates e
 xecutable code.   In this talk I’ll take you on a journey into Core\, wi
 th several goals.   First\, if you ever do performance-debugging of a Hask
 ell program you may well find yourself staring at Core dumps to understand
  the program that the computer is executing (it may look nothing like the 
 one you wrote!).  Second\, one way to extend GHC is to write  a Core-to-Co
 re plugin to do some cool optimisation or transformation that you want\; a
 nd you can only do that if you understand Core.  \n\nLastly\, even if you 
 want to do none of these things\, I think you may enjoy the adventure. Cor
 e is a tiny but super-expressive language that can express all of Haskell\
 , including all the types\, and more beside.   It pulls off this trick by 
 drawing directly on System F\, a mathematical calculus from type theory.  
 Functional programming is amazing: serious theory leads directly to beauti
 ful implementations.
LOCATION: Centre for Mathematical Sciences\, Meeting Room 5 (centre buildi
 ng\, basement)
END:VEVENT
END:VCALENDAR
