Archives
-
Functional Programming and Collective Intelligence
During some of my talks about functional programming, and in turn, F#, many do ask “Why Functional Programming?” and “Why use F#?” and both are very good questions. Many of the people using F# today are in fields such as finance, insurance, science and academia. Today, I hope to dive into a subject for which it is well suited. If you’ve been following me on Twitter, I’ve been talking a bit and showing off a bit of code on today’s subject.
-
Talking Functional Programming with Erik Meijer
When I was last out in Redmond, I had the opportunity to sit down with Erik Meijer to speak about something for which I’m passionate, functional programming. After such recent appearances on Channel9 as Joe Duffy and Anders Hejlsberg, I was quite flattered to be asked to appear. I gave a short as possible introduction to start talking about any number of topics including my passion for functional programming, the Haskell and F# languages, and many other ideas.
-
DC ALT.NET 3/25 – Introduction to TDD
The March meeting for DC ALT.NET will be on March 25th from 7-9PM EDT. Check the our mailing list for continuing updates and future meetings. This month we have Jonathan Cogley providing an introduction to Test Driven Development. This session will walk through a real-world problem and how to identify and isolate the dependencies in the logic. This is in the series of getting back to the basics series that I hope to mix in with our regular meetings. This might also include Firestarter events, coding dojos and so on to help build the development community here in the Washington DC area.
-
Functional .NET – Lose the Magic Strings
In this current series that I’m running as a follow-up to my presentation last week on Applied Functional Programming, we’re talking about ways we can improve our code with functional techniques. The ideas presented here are things that are being used in applications today, and learning from them can help you write more concise and flexible code.
-
Functional .NET - Laziness Becomes You
In the previous post, I talked about some of the basic ideas you can learn from Functional Programming and apply to your code right now. The first topic that was tackled was extensibility through the use of closures. Today, I’ll cover laziness in your APIs, how it can help, and what pitfalls might arise.
-
Functional Programming in .NET – Adding Extensibility
Thanks for everyone who attended my session on applied functional programming earlier this week at RockNUG. This session was intended to reinforce the basics of thinking functionally and what techniques you can do right now to take advantage. It was more of a subset of my workshop I gave at the Continuous Improvement in Software Conference last year, with the addition of a few items. Of course I had to through in some Haskell as well and show off the Jolt Award winning book Real World Haskell.
-
Which Is More Beautiful Architecture - FP or OOP?
Recently, upon the recommendations of a few people, I picked up a copy of the book “Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software”. This book is a great read and includes essays from some of the top minds in software today. Some of the topics covered are:
-
RockNUG – 3/11/2009 – Functional Programming in .NET
I will be appearing this upcoming Wednesday at the Rockville .NET User Group (RockNUG) to give a presentation on Functional Programming in .NET. This presentation will focus on the basics of functional programming, but also why you should care and how you can start applying these techniques today in your .NET Code. With the evolution of the C# language and the base class libraries to incorporate functional aspects such as closures, statement lambdas, expressions, lazy evaluation, we now have more tools to express our code in a very declarative style. Also, the incorporation of F# into Visual Studio as a first class language sends a signal that functional programming is gaining momentum. And who knows, we’ll probably talk some Haskell as well…
-
Exploring MapReduce with F#
With my exploration into mass concurrency and big data problems, I’m always finding challenges to give myself on how I might solve a given issue. Such examples that have intrigued me along the way as PLINQ, MPI/.NET, Data Parallel Haskell, but one in particular has intrigued me more – MapReduce. A challenge I gave myself is to fully understand this paradigm and implement a version using F#.
-
Introducing Maestro – A DSL for Actor Based Concurrency
As you may have noticed from my blog, there is a big interest in concurrency. Along with that, I’ve made my way into Actor model based concurrency including such forays into Erlang, the Haskell-Actor package, Mailbox Processing in F#, and even such things as Retlang in C#. The problem with some of the .NET solutions is that they don’t go far enough into memory isolation and channel contracts as to what can and cannot happen. In order to enforce such a behavior, we need some sort of static analysis to indicate that. Of course with static analysis, it could be ignored and might not be as type rich as, say a DSL. And that’s where Maestro comes in.
-
Code Cast #24 – On Functional Programming
A week or so ago, I had the opportunity to talk to David Starr and Jarrod Ferguson for the Elegant Code Cast. This time, the topic was functional programming in general, and not just one language in particular. It was a lot of fun to talk with those guys about a subject I’m quite passionate about. I also recently recorded a Channel9 interview with Erik Meijer on the same subject which should be posted soon.