Archives
-
Functional Programming Unit Testing – Part 7
In the previous installment in this series, I covered how you can use type classes to implement operators to allow you to do such things as approximate equals for floating point calculations, so that you could run QuickCheck property tests with relative ease. This post will get us back on track to our refactoring tales and what tools we can use to better understand the language.
-
Much Ado About Monads – Maybe Edition
In the past I’ve extensively talked about creating monads, but not as much more around them in terms of why you might use them and what problems they are trying to solve. Since that time, I’ve been challenged by others to actually prove not only that it can be understood by everyone, but they are very useful as well. It’s been a form of geekery among us software professionals to say, “Whoopee! I’ve learned how to implement a monad to do x” without really explaining the reason why people should care.
-
Functional Programming Unit Testing – Using Type Classes
I wanted to take a brief sidebar from the refactoring conversation that I’ve been having in the past couple of posts, and focus on QuickCheck again. In the next post, I’ll get back to refactoring with HLint. In this post, I want to talk about using type classes to implement operators to use for QuickChecks property-based tests.
-
[ANN] DC ALT.NET Meeting 1/28/2009 – Selenium + FitNesse
The January meeting of DC ALT.NET will be held on the 28th from 7-9PM. This month, we’re having Jay Flowers talk with us about web testing with Selenium and FitNesse. This is a great follow-on conversation to the conversation with John Morales on Selenium that we had back in November of last year. This is in part of the back to basics that this group will be following in the oncoming year. Taking cues from the Philly ALT.NET Foundation Series, and the TDD FireStarter in Tampa, I think there is a bit we can do in the Washington, DC area to shake things up a bit.
-
How would the CLR Be Different?
UPDATED: Added improved generics with higher-kinded polymorphism
-
Functional Programming Unit Testing - Part 6
In the last installment in this series, we talked about separating the side effecting code from the pure functions. I gave examples in both Haskell and F# to accomplish this goal, although with Haskell it’s more intuitive due to encapsulating the side effects within the IO monad. This time, let’s cover how we can abstract the monadic code through the use of type classes. Using the book, Real World Haskell, has opened up a lot of possibilities in this area.
-
2008 – The Year that Was
I know if I were to do a retrospective, it should have been last week, but now is as good a time as any. 2008 was a busy year for myself that I managed to challenge myself and push myself in many different ways. From joining CodeBetter to speaking at conferences, there has been a lot of things going on. I’ll focus on three areas, the personal, local and more global levels.
-
[ANN] The Real World Haskell Book Club Starts 1/5/2009
-
Functional Programming Unit Testing - Part 5
In the last installment in this series, we talked about code coverage, what they are, and how you should use them. I gave examples in both Haskell and F# to accomplish this goal. One thing we've touched briefly in this conversation is around refactoring and cleaning up our code, and it’s about time we come back to that subject.