Geeks With Blogs
Mark Pearl April 2010 Entries
F# Objects – Integration with the other .Net Languages – Part 2
So in part one of my posting I covered the real basics of object creation. Today I will hopefully dig a little deeper… My expert F# book brings up an interesting point – properties in F# are just syntactic sugar for method calls. This makes sense… for instance assume I had the following object with the property exposed called Firstname. type Person(Firstname : string, Lastname : string) = member v.Firstname = Firstname I could extend the Firstname property with the following code and everything would ......

Posted On Thursday, April 29, 2010 6:36 PM

F# Objects – Integrating with the other .Net Languages – Part 1
In the next few blog posts I am going to explore objects in F#. Up to now, my dabbling in F# has really been a few liners and while I haven’t reached the point where F# is my language of preference – I am already seeing the benefits of the language when solving certain types of programming problems. For me I believe that the F# language will be used in a silo like architecture and that the real benefit of having F# under your belt is so that you can solve problems that F# lends itself towards and ......

Posted On Thursday, April 29, 2010 6:49 AM

International Radio Operators Alphabet in F# & Silverlight – Part 2
So the brunt of my my very complex F# code has been done. Now it’s just putting the Silverlight stuff in. The first thing I did was add a new project to my solution. I gave it a name and VS2010 did the rest of the magic in creating the .Web project etc. In this instance because I want to take the MVVM approach and make use of commanding I have decided to make the frontend a Silverlight4 project. I now need move my F# code into a proper Silverlight Library. Warning – when you create the Silverlight ......

Posted On Thursday, April 22, 2010 7:12 PM

International Radio Operators Alphabet in F# & Silverlight – Part 1
So I have been delving into F# more and more and thought the best way to learn the language is to write something useful. I have been meaning to get some more Silverlight knowledge (up to now I have mainly been doing WPF) so I came up with a really simple project that I can actually use at work. Simply put – I often get support calls from clients wanting new activation codes. One of our main app’s was written in VB6 and had its own “security” where it would require about a 45 character sequence for ......

Posted On Thursday, April 22, 2010 9:36 AM

Lazy Evaluation – Why being lazy in F# blows my mind!
First of all – shout out to Peter Adams – from the feedback I have gotten from him on the last few posts of F# that I have done – my mind has just been expanded. I did a blog post a few days ago about infinite sequences – I didn’t really understand what was going on with it, and I still don’t really get it – but I am getting closer. In Peter’s last comment he made mention of Lazy Evaluation. I am ashamed to say that up till then I had never heard about lazy evaluation – how can evaluation be lazy? ......

Posted On Monday, April 19, 2010 4:45 PM

WF4 – Guess the number game!
I posted yesterday how really good WF4 was looking. Today I thought I would show some real basics that I was able to figure out. This will be a simple example, I am going to make a flowchart workflow – which will prompt the user to guess the number until they guess the right number. Lets begin… Make a new project and make it a Workflow console Application. Then select the Workflow file and drag a FlowChart (2) to point 3. This will now show a green start circle in the designer form. We are going ......

Posted On Thursday, April 15, 2010 7:12 AM

WF4 – It has suddenly got interesting
I was at Teched two years ago when one of the Microsoft leads said there were three new area’s that we needed to pay attention to for development, namely: WPF WCF WF At the time I was just getting back into development work and had a look at WPF and immediately was sold on the approach. While I haven’t been to involved with WCF directly, I know that some of the guys in my dev team have been and that it too was a success. So what happened to WF? It seemed clunky, and all the demo’s that I saw of it ......

Posted On Wednesday, April 14, 2010 6:05 AM

F# and the useful infinite Sequence (I think)
So I have seen a few posts done by other F# fans on solving project Euler problems. They looked really interesting and I thought with my limited knowledge of F# I would attempt a few and the first one I had a look at was problem 5. Which said : “2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder. What is the smallest number that is evenly divisible by all of the numbers from 1 to 20?” So I jumped into coding it and straight away got stuck – the ......

Posted On Tuesday, April 13, 2010 5:55 PM

No Thank You – Yours Truly – F#
I am plodding along with my F# book. I have reached the part where I know enough about the syntax of the language to understand something if I read it – but not enough about the language to be productive and write something useful. A bit of a frustrating place to be. Needless to say when you are in this state of mind – you end up paging mindlessly through chapters of my F# book with no real incentive to learn anything until you hit “Exceptions”. Raising an exception explicitly So lets look at raising ......

Posted On Friday, April 9, 2010 5:52 PM

MSCRM Tax default to Zero
I have been playing around with MSCRM4 lately. It has been interesting going. I had a problem getting the tax to reflect correctly, it was defaulting at zero. Eventually I found a solution after scouring the web for a while... see steps below… Add the following code to OnSave and OnLoad events of quotedetails form with (crmForm.all) { try { var dTax = (baseamount.DataValue - manualdiscountamount.DataVa... *15.5 /100; tax.DataValue = dTax; extendedamount.DataValue = baseamount.DataValue - manualdiscountamount.DataValue ......

Posted On Wednesday, April 7, 2010 11:16 AM

Mutable Records in F#
I’m loving my expert F# book – today I thought I would give a post on using mutable records as covered in Chapter 4 of Expert F#. So as they explain the simplest mutable data structures in F# are mutable records. The whole concept of things by default being immutable is a new one for me from my C# background. Anyhow… lets look at some C# code first. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MutableRecords { public class DiscreteEventCounter { ......

Posted On Tuesday, April 6, 2010 5:41 PM

Encapsulating code in F# (Part 2)
In part one of this series I showed an example of encapsulation within a local definition. This is useful to know so that you are aware of the scope of value holders etc. but what I am more interested in is encapsulation with regards to generating useful F# code libraries in .Net, this is done by using Namespaces and Modules. Lets have a look at some C# code first… using System; namespace EncapsulationNS { public class EncapsulationCLS { public static void TestMethod() { Console.WriteLine("Hello"); ......

Posted On Monday, April 5, 2010 5:40 PM

Formal Languages, Inductive Proofs & Regular Expressions
So I am slogging away at my UNISA stuff. I have just finished doing the initial once non stop read through the first 11 chapters of my COS 201 Textbook - “Introduction to Computer Theory 2nd Edition” by Daniel Cohen. It has been an interesting couple of days, with familiar concepts coming up as well as some new territory. In this posting I am going to cover the first couple of chapters of the book. Let start with Formal Languages… What exactly is a formal language? Pretty much a no duh question for ......

Posted On Monday, April 5, 2010 12:32 PM

Recursion in F#
Things are slowly coming together – I was able to look at a bit of F# code and intuitively know what it was going to do (yay)… So today I saw a blog post by Bob Palmer on Fibonacci numbers in F# which inspired me to look at bit into recursion. First the C# example… class Program { public static void CountDown(int n) { switch (n) { case 0: Console.WriteLine("End of Count"); break; default: Console.WriteLine(n); CountDown(n-1); break; } } static void Main(string[] args) { CountDown(10); Console.ReadLine(); ......

Posted On Sunday, April 4, 2010 4:02 PM

Encapsulating code in F# (Part 1)
I have been looking at F# for a while now and seem a few really interesting samples and snippets on howto’s. This has been great to see the basic outline of the language and the possibilities, however a nagging question in the back of my mind has been what does an F# project look like? How do I group code in F# so that it can be modularized and brought in and out of a project easily? My Expert F# book has an entire chapter (7) dedicated to this and after browsing the other chapters of the book I ......

Posted On Saturday, April 3, 2010 6:59 PM

Errata in “Expert F#”


For anyone else that is going to use this book – read the following errata about the book.

Posted On Friday, April 2, 2010 4:40 PM

Creating my first F# program in my new “Expert F# Book”
So I have a brief hour or so that I can dedicate today to reading my F# book. It’s a public holiday and my wife’s birthday and I have a ton of assignments for UNISA that I need to complete – but I just had to try something in F#. So I read chapter 1 – pretty much an introduction to the rest of the book – it looks good so far. Then I get to chapter 2, called “Getting Started with F# and .NET”. Great, there is a code sample on the first page of the chapter. So I open up VS2010 and create a new F# console ......

Posted On Friday, April 2, 2010 4:10 PM

South African .Net Bloggers
Where would I be without the inspiration of the following South African developers who are constantly contributing to the .NET community. Robert MacClean Hilton Giesenow Rubi Grobler Zayd Kara Zlatan Dzinic Dave Coates As well as the great input we get from the local Microsoft people ......

Posted On Friday, April 2, 2010 9:08 AM

Copyright © MarkPearl | Powered by: