MP3 Audio [30 MB] Download Show URL

In this episode I talk with Matthias Felleisen. We talk his history with Schemes from The Little Lisper, How to Design Programs, to Typed Racket. We also cover teaching math to middle schoolers with Bootstrap, and using programming to teach problem solving and more.

Our Guest, Matthias Felleisen

Matthias Felleisen’s home page

Announcements

On May 2nd and 3rd flatMap(Oslo) is taking place in Oslo, Norway. flatMap(Oslo) is a conference about functional programming, mainly on the JVM. The call for speakers is now open. To find out more visit http://2016.flatmap.no for more information, and make sure to use code GEEKERY when registering to find out more.

PolyConf 2016 will be taking place on June 30th – July 2nd. The Call For Proposals is now open, and will be taking submissions through the 13th of March. Visit http://polyconf.com/ to keep updated with news as more details become available, and http://eventil.com/events/polyconf-16 to submit your talk proposal.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Matthias

Realm of Racket

Racket

William Byrd episode of Functional Geekery

Matthew Flatt episode of Functional Geekery

How Matthias fell in love with parenthesis

How a Ph.D. works and how Dan Friedman led him through his Ph.D.

Essentials of Programming Languages

Research into continuations

The Little Schemer

How to improve teaching The Little Lisper

Structure and Interpretation of Computer Programs

The Seasoned Schemer

The approach of the Socratic manner in The Little Lisper

The Reasoned Schemer

How to Design Programs

“Students didn’t actually get how to write programs well”

Tinkering vs repeatable design process

Teaching programming to teach mathematics

Using programming to teach problem solving

Bootstrap to teach programming

Learning path from middle school through graduating college

“How ‘Hello, World!’ allows them to view problem solving as a very systematic process”

Relationship of How to Design Programs and PLT Scheme/Racket

“Aiming for a programming language in which it was easy to make little languages”

DrRacket

“Domain Specific Languages […] is the ultimate abstraction”

Types as a tool to express what was in one’s mind when designing software

Typed Racket

How Typed Racket came into being in Racket

Interaction between typed and untyped modules

Importance of new, fresh eyes to explore, stretch, and break Typed Racket

RacketCon

StrangeLoop

As always, a giant Thank You goes to David Belcher for the logo design.