Functional Programming
57 posts

C9 Lectures: Dr. Erik Meijer  Functional Programming Fundamentals, Chapter 1 of 13
Average: 4.75
(100)Welcome to a new technical series on Channel 9 folded into a different kind of 9 format: C9 Lectures. These are what you think they are, lectures. They are not conversational in nature (like most of what you're used to on 9), but rather these pieces are entirely focused on education, coming to you… 
C9 Lectures: Dr. Erik Meijer  Functional Programming Fundamentals, Chapter 2 of 13
Average: 4.75
(54)In Chapter 2, Dr. Meijer introduces Haskell syntax and notation (via a Haskell implementation called Hugs, to be precise, which is based on Haskell 98) and we learn about the Haskell syntax that represents the fundamental construct of functional programming:functions. It's not like you're used to in… 
C9 Lectures: Dr. Erik Meijer  Functional Programming Fundamentals Chapter 8 of 13
Average: 4
(14)In Chapter 8, Functional Parsers, it's all about parsing and parsers. A parser is a program that analyses a piece of text to determine its syntactic structure. In a functional language such as Haskell, parsers can naturallybe viewed as functions. type Parser = String > TreeA parser is a… 
C9 Lectures: Dr. Erik Meijer  Functional Programming Fundamentals, Chapter 3 of 13
Average: 5
(21)In Chapter 3, Dr. Meijer explores types and classes in Haskell. A type is a collection of related values and in Haskell every wellformed expression has a type. Using type inference, these types are automatically calculated at run time. Ifexpression e returns a type t, then e is of type t, e :: t. A… 
C9 Lectures: Dr. Erik Meijer  Functional Programming Fundamentals Chapter 4 of 13
Average: 5
(21)In Chapter 4, Dr. Meijer teaches us about the art and practice of defining functions. Functions can be defined using conditional expressions and in Haskell conditional expressions must always have an else clause. Functions can also be defined using guarded equations and pattern matching. You will… 
Brian Beckman: Don't fear the Monad
Average: 5
(11)Functional programming is increasing in popularity these days given the inherent problems with shared mutable state that is rife in the imperative world. As we march on to a world of multi and manycore chipsets, software engineering must evolve to better equip software engineers with the tools to… 
C9 Lectures: Dr. Erik Meijer  Functional Programming Fundamentals Chapter 7 of 13
Average: 5
(16)In Chapter 7, Dr. Meijer teaches us about HigherOrder Functions. A function is called higherorder if it takes a function as an argument and returns a function as a result:twice :: (a > a) > a > atwice f x = f (f x)The function twice above is higher order because it takes a function… 
C9 Lectures: Dr. Erik Meijer  Functional Programming Fundamentals Chapter 6 of 13
Average: 5
(17)In Chapter 6, Dr. Meijer guides us through the world of recursive functions. In Haskell, functions can be defined in terms of themselves. Such functions are called recursive. For example: factorial 0 = 1factorial (n+1) = (n+1) * factorial nfactorial maps 0 to 1, and any other positive… 
C9 Lectures: Dr. Erik Meijer  Functional Programming Fundamentals Chapter 5 of 13
Average: 5
(23)In Chapter 5, Dr. Meijer introduces and digs into List Comprehensions. In mathematics, comprehension notation is used to construct new sets from old sets. In Haskell, you can create new lists from old lists using a similarcomprehension syntax:[x^2  x < [1..5]]The above notation represents the… 
C9 Lectures: Dr. Erik Meijer  Functional Programming Fundamentals Chapter 13 of 13
Average: 5
(14)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…