March 2005 Blog Posts

Why Some/None is better than null

People interested in the advantages for F# might do well to take a look at F# option type. This allows an F# programmer to specify the presents or absence of some data much the same way a C# programmer might use a null reference.   Let us take a quick look at how you might use the option type. It is implemented as a discriminating union so can be investigated with F#’s pattern matching constructs.   let nodeText = match (get_single_node node “/fruit/apples”) with             | None -> “”             | Some node -> get_node_text node   If we imagine...

Tallow! Beware!

  I think Tallow is a cool tool it can save you a lot of typing when creating a wix installation. I recently used it to create a couple of installations for a project I’m not. It was then I noticed it does have one downside: it does not add a Guid attribute to any of the Component tags it generates.   I know this does sounds like a major thing, but it had me scratching my head of a while. The installation I had created was not uninstalling correctly and I no idea why, other...