Browse by Tags

Don’t Misuse Lambdas
Avoid Duplicating Code It’s great that so many C# and VB.NET developers are taking advantage of LINQ. Unfortunately, using LINQ can encourage you to misuse lambdas. Consider the following simple example...
Posted 08 January 2010 08:15 PM by cmarinos | with no comments
Filed under: , ,
Designing F# Functions for Currying and the |> Operator
Last week, I led a jam about F# at the Ann Arbor Study Group . One of my SRT Solutions coworkers, Ben Barefield , asked a question that warrants further discussion. After I introduced the forward pipe...
Option Types vs Nullable Types
Some of the feedback that we’ve received about Elevate has to do with Option types and how they are different or similar to Nullable types in C#. Luke Hoban does a great job of describing some of the differences...
Introducing Elevate
The past few weeks, a few other SRT Solutions developers and I have been working on a new open source library called Elevate . We went public with the source on CodePlex this weekend, and although we’re...
F# For C# Programmers: Programming In the Small
During CodeMash this past January, I had the opportunity to talk with Chris Smith about F#. One of the things that he considered to be a sweet spot for the language was programming “in the small”. At the...
Posted 31 July 2009 03:16 PM by cmarinos | with no comments
Filed under: , ,
Early Impressions - F# in Visual Studio 2010 Beta 1 and May CTP
First thing’s first. If you’re interested in an in depth description of the changes to F# in the 2010 beta and the May CTP, look no further than this post by Don Syme. Clearly, the F# team has been busy...
Writing BDD-Style tests in F# with xUnit.net
Recently, I’ve been exploring different options for testing in F#. I was pleased to find out that there has been some good work done in this space already: Matthew Podowysoki’ s Functional Programming...
Posted 20 April 2009 12:30 AM by cmarinos | with no comments
Filed under: , ,
F# Performance Testing: F# Types vs Structs and Classes
F# introduces Record Types and Descriminated Unions to the .NET universe. Although I knew that these types eventually boiled down to reference types, I wanted to make sure that nothing funny was going...
Posted 10 April 2009 03:00 PM by cmarinos | with no comments
Filed under:
The Code Behind Paint Wars: Merging Functional and OOP
This post is the fourth in a series of posts about the code behind PaintWars . In this series, I will be talking about how the design and implementation of the game differed in C# and F#. Along the way...
The Code Behind Paint Wars: Functional Design
This post is the third in a series of posts about the code behind PaintWars . In this series, I will be talking about how the design and implementation of the game differed in C# and F#. Along the way...
The Code Behind Paint Wars: Object Oriented Design
This post is the second in a series of posts about the code behind PaintWars . In this series, I will be talking about how the design and implementation of the game differed in C# and F#. Along the way...
Paint Wars on Display at CodeMash
At the SRT Solutions booth at CodeMash this year, we will be showcasing Paint Wars, which is a Wii remote controlled game built on the XNA Framework. The game was originally developed in C# during the...
F# Projects - Order Does Matter
It's common to run into a few simple problems when learning a new programming language. One such problem that I ran into with F# was resolving dependencies within projects. With the September F# CTP...