On 2nd of November I did a presentation on F# and functional programming at the Czech .NET User Group meeting. Because I spent quite a lot of time with puting the presentation together I wanted to make it available to wider audience, so I translated the slides and examples to English (anyway, translating the content took me only a few minutes :-)). In case that some of the readers prefer Czech version, I attached the original documents too.
In the presentation I tried to introduce some basic concepts of functional programming (immutable values, lazy evaluation) to the audience with no experience with functional programming, as well as present some of the most interesting features of F# (like strict type system based on type inference, .NET interoperability and metaprogramming). The whole contents of the presentation is following:
- Functional programming in F# - Introduction to the F# type system
- Some useful functional idioms - How to do Foldl/Map/Filter functions and Lazy evaluation in C#
- Interactive scripting - What is important for scripting, mathematical simulation
- Interoperability between F# and other .NET languages - How to use .NET libraries from F# and F# libraries from ohter .NET languages
- F# as a language for ASP.NET - How to use F# as a language for ASP.NET development
- Meta-programming in F# - Meta-programming features in F# and the FLINQ project