In the example I used in the past post utilized the “let” command and it didn’t have any data type, what’s up with that? Oh it gets worse, the identifier (not variable) are immutable. That is the memory location of the identifier cannot be modified. To create an mutable identifier you have to declare the identifier as mutable. This is one of the differences between functional programming (F#, OCAML) and imperative programming (C#, VB.NET, Java), the concept of identifiers is not really supported in the imperative languages, although there are constants. This is not to say that F# doesn’t support imperative programming, F# is object oriented, but it’s focus on the functional approach to programming.
Identifiers are interesting, and to continue the discussion about solving engineering problems, we definitely will need to deal with functions. Functions easy to work with in F#, and we will take a look at functions in the next episode of the blog, mainly because I need to work on my game blog at http://blogs.msdn.com/devschool, where you can learn how to build a game for a Christmas Present this year!