Ever wonder what would happen if you happened upon Simon Peyton-Jones, author of the Glasgow Haskell Compiler (GHC) and a key contributor to the Haskell functional programming language, and John Hughes, fellow Haskellite, computer scientist, creator of QuickCheck, and author of…
I caught up with Simon Peyton-Jones, author of the Glasgow Haskell Compiler (GHC) and a key contributor to the Haskell functional programming language, at YOW! 2011. Simon is a pure functional guy. That said, he's OK with side effects as long as you can control them (so,…
It's been far too long since we've had some meaty functional programming content on C9. Luckily, none other than Graham Hutton dropped off a present on our doorstep! Dr. Hutton graciously provided Channel 9 with his latest self-filmed lecture—thank you, Graham! We're honored. This is certainly…
by Simon Peyton Jones, Principal Researcher, Microsoft ResearchToday's most widely used technology, by far, for static program verification is the ubiquitous type checker. Alas, static type systems inevitably exclude some good programs; and allow some bad ones. Thus motivated, Simon describes…
by Simon Peyton Jones, Principal Researcher, Microsoft ResearchHaskell is now quite widely used, but its most important contributions are the ideas that it embodies. In this talk Simon focuses on one of these ideas, namely type classes, with a few anecdotes and reflections along the way about the…
Dr. Ralf Lämmel returns for an exploration of folds, aka bananas. This is lecture 5 in his C9 Lecture series covering advanced functional programming topics. Welcome back, Ralf! We're so happy to have you here!Why bananas, Ralf?Banana is functional programming slang…
We had to cover monads eventually, and there are many great monad tutorials out there (see, for example, here: http://www.haskell.org/haskellwiki/Tutorials#Using_monads). In fact, there are web resources concerned solely with organizing the many monad tutorials available in the wild, and developing…
In part 3 of the Advanced Functional Programming lecture series, Dr. Lämmel focuses on the domain of language interpretation as a method of understanding some important functional programming techniques. As a side effect, some basics of programming language
theory are also…
"The Expression Problem is a new name for an old problem. The goal is to define a datatype by cases, where one can add new cases to the datatype and new functions over the datatype, without recompiling existing code, and while retaining static type
safety (e.g., no casts)." - Philip…
Well, my friends, the day has arrived. For thirteen weeks, you have been provided all the conceptual tools to take the leap into the deep end of the functional programming pool and float safely. The great Dr. Erik Meijer has generously given his value
time to teach us the fundamentals as delivered…