Functional Programming

Iterators: Signs of Weakness in Object-Oriented Languages

The appearance of iterators in an object-oriented language appears to be inversely related to the power of the language's intrinsic control structures. Iterator classes are used for the sole purpose of enumerating the elements of an abstract collection class without revealing its implementation. We find that the availability of higher-order functions and function closures eliminates the need for these ad hoc iterator classes, in addition to providing the other benefits of "mostly functional programming".

The Swine Before PERL

Shriram Khrishnamurthi's presentation on the beauty of Scheme and functional programming languages. This presentation was what sold me on Scheme and Functional Programming. You have to watch it. This is probably my favorite presentation of all time!

Functional JavaScript Programming Tutorial

The motivation for this tutorial is that there are heaps of resources on JavaScript programming but only few even mention the functional features of JavaScript. In this tutorial I will explain the basics only without going into detail about other functional languages or even the lambda-calculus.

Mastering recursive programming

Recursion is a tool not often used by imperative language developers, because it is thought to be slow and to waste space, but as the author demonstrates, there are several techniques that can be used to minimize or eliminate these problems. He introduces the concept of recursion and tackle recursive programming patterns, examining how they can be used to write provably correct programs. Examples

Why Functional Programming Matters

This paper dates from 1984, and circulated as a Chalmers memo for many years. Slightly revised versions appeared in 1989 and 1990 in the Computer Journal and the Year of Programming. This version is based on the original Chalmers memo nroff source, lightly edited for LaTeX and to bring it closer to the published versions. Please excuse the slightly old-fashioned type-setting, and the fact that the

Everything Your Professor Failed to Tell You About Functional Programming

Computer science is the womanizer, and math is the pure-hearted girl he won't call the next day.

Advanced Functional Programming

Class webpage on Advanced Functional Programming and related reading materials.

The Implementation of Functional Programming Languages

The Implementation of Functional Programming Languages
Simon Peyton Jones, published by Prentice Hall, 1987.

Approaching functional programming from a procedural mindset

Approaching functional programming from a procedural mindset

Functional Programming in the Real World

Here is a list of functional programs applied to real-world tasks. The main criterion for being real-world is that the program was written primarily to perform some task, not primarily to experiment with functional programming. Functional is used in the broad sense that includes both `pure' programs (no side effects) and `impure' (some use of side effects). Languages covered include CAML, Clean, E

Syndicate content