Functional Programming Features in C# Presentation

I gave my functional programming features in C# presentation tonight and I wanted to make sure I got the code posted up. This presentation was all about the features in C# 3.0 that were borrowed from functional programming, not necessarily programming functionally in C#. Here is the presentation and source: Hope you enjoy!

Presentation

Source

Be Sociable, Share!

2 comments

  1. Justin,
    Find out your website from Andrew Duthie’s blog. Good stuff.

  2. Very good presentation.

    There is one thing I wish you had done: I wish you had stuck with the .NET 3.5 extension method names instead of the functional names, e.g. Aggregate instead of Fold, Where instead of Filter, Select instead of Map.

    The reason is threefold:

    1. As an audience of C# devs, they’ll be exposed to the .NET names more often, and thus those names are more relevant.

    2. It means that once you move "beyond" the project introducing the extension method (where the introduction provides the implementation for discussion purposes), later projects can use the .NET 3.5 extension methods instead of you needing to "bring along" your previously implemented methods.

    3. When a developer tries to build upon your presentation (take some code, mutate it for their own purposes, etc.) they won’t think that they need to use your extension methods and can instead rely on the pre-existing ones.

    Using the pre-existing names will also enhance future migration to PLINQ and the other Parallel Threading libraries.

Leave a Reply

Your email address will not be published. Required fields are marked *