Chris Smith's completely unique view

Algorithms, functional programming, CLR 4.0, and of course, F#!

Blog - About

About Chris Smith's completely unique view

Chris works as a Software Design Engineer in Test at Microsoft, where he spends his time making sure F# is the most awesome programming language ever.

  • Chris Smith's completely unique view

    F# in 20 Minutes - Part I

    • 66 Comments
    Edit: If you are interested in learning F#, let me take the opportunity to provide a shameless plug for my book Programming F# . Edit: Updated for the September CTP. Edit: While I certainly encourage you to read my blog, there is a great video we...
  • Chris Smith's completely unique view

    Programming F# – Official Cover

    • 22 Comments
    Edit 8/19: You might notice, the cover is no longer a jellyfish. While I know this is a slight disapointment for some - including myself - trust me when I say I have a plan to remedy this. Stay tuned! So as it turns out my petition for a kickass cover...
  • Chris Smith's completely unique view

    Petition for Programming F#’s Book Cover!

    • 21 Comments
    You might have noticed my blogging has slowed down to a lull; never fear, this is just because I have been working  it is been because I have been hard at work writing I am working full steam on finishing up Programming F# . But I cannot finish this...
  • Chris Smith's completely unique view

    F# No Longer Vaporware

    • 20 Comments
    REDMOND, WA - Sadly, after nearly four years of stringing developers along with Microsoft's longest touted non-product, F# was accidentally checked into the Visual Studio 2010 source tree Microsoft sources report. This mistake killed what would have been...
  • Chris Smith's completely unique view

    F# in 20 Minutes – Part II

    • 16 Comments
    Now that we have covered the basics, in minutes 8 - 14 we will cover the foundational concepts and types in F#. By the end of Part II you should be able to read F# code reasonably well. Immutability You may have noticed that I’ve been using the...
  • Chris Smith's completely unique view

    Language Oriented Programming in F#

    • 15 Comments
    Last Tuesday I gave a talk to the .NET Developers Association entitled Language Oriented Programming in F# . You can find a video of the presentation here *. This essay is the written version of that presentation, which unfortunately doesn’t translate...
  • Chris Smith's completely unique view

    Due out Next Year – Programming F# by Chris Smith

    • 14 Comments
    I’d like to announce that for the past few months I’ve been secretly working on a book for O’Reilly titled Programming F# . My aim is to provide the one-stop-shop for learning the breadth of the F# language. A special thanks goes out to Nate LaMartina...
  • Chris Smith's completely unique view

    F# Zen - ROT13

    • 12 Comments
    Below is a primitive implementation of ROT13 / Ceasar Cipher in F#. In short it is a simple encryption algorithm that works by 'shifting' each letter 13 places. So an 'a' becomes an 'n', a 'b' becomes an 'o', and so on. To decrypt the text you simply...
  • Chris Smith's completely unique view

    F# and the PFX Round 1

    • 11 Comments
    I’m currently working on a chapter for Programming F# titled Asynchronous and Parallel Programming which should turn out pretty well. Anyways, I have an example that was too awesome not to blog. In this post I’ll show how to use the Parallel Extensions...
  • Chris Smith's completely unique view

    Idiomatic F# – Functional vs. Imperative

    • 11 Comments
    Our story begins with this guy, Stuart Bowers, sipping functional programming cool aid out of a kickass mug from Cafe Press . Stuart is a developer on Amalga and full-time F# developer at Microsoft. The world is at a loss because this man does not blog...
  • Chris Smith's completely unique view

    Countdown to F# CTP

    • 10 Comments
    In case you didn’t see it over on Brian’s blog, he’s posted a sneak peak at the F# Project System: Part I   Part II . If you’ve used the Visual Studio integrate for our previous releases you might have noticed it was a tad ‘unsavory’. Well the images...
  • Chris Smith's completely unique view

    Project Euler in F# - Problem 1

    • 10 Comments
    With the latest news about baking F# into Visual Studio I figured re-solving the problems from Project Euler would be a great way to learn F# and hopefully come up with cleaner solutions. This post will go over my solution for problem 1 in F#....
  • Chris Smith's completely unique view

    A Java to x86 compiler written in F#

    • 9 Comments
    A little personal information about me, I’m currently working on a masters degree at the University of Washington. And a few weeks ago I completed taking a course in Compiler Construction , where the course project was to build a simple Java compiler...
  • Chris Smith's completely unique view

    Back in Action!

    • 9 Comments
    I know it’s cliché to blog about blogging, but I’d like to take this opportunity to explain why there has been such a lull. In short, I’ve been busy. Finished Programming F# As you might have heard, I was working on a book . Well no more! The book...
  • Chris Smith's completely unique view

    Good News and Sad News - Leaving Microsoft

    • 9 Comments
    The Good News You might have heard, Visual Studio 2010 is done, launched, and out the door! That’s right, after several short years F# version 1.0 is generally available! While it’s been alive and well in CTP form for many years, now you can go to...
  • Chris Smith's completely unique view

    Grotesque F# Code - I

    • 8 Comments
    Recently a friend came to me in a mild panic about some massive refactoring he needed to do to an F# code base. The code he had was very complicated and maintenance was a pain. After only a few seconds scanning through the code I certainly could see that...
  • Chris Smith's completely unique view

    Simple F# Game using WPF

    • 8 Comments
    With the F# CTP out the door, let’s take a look at what it can do. Ryan Cavanaugh, not the famous Banjo Player , the one on the VS Pro Tools Team, helped me put together an artillery game called BurnedLand. (Kudos if you can catch the subtle reference...
  • Chris Smith's completely unique view

    The Halting Problem and the Church-Turing Thesis

    • 7 Comments
    Two weeks ago at PDC Dustin “former blogger” Campbell and I sat down with Keith and Woody to record an episode of Deep Fried Bytes . The show hasn’t been posted yet, but I’m sure it will turn out great. We talked about all sorts of things, from me shamelessly...
  • Chris Smith's completely unique view

    Mastering F# Lists

    • 7 Comments
    Minor update: spelling Lists represent the backbone of functional programming and in order to be an effective F# programmer you must truly master list processing. Fortunately lists are simple and straight forward, so let’s begin. Mastering F# Lists...
  • Chris Smith's completely unique view

    Project Euler - Problem 34

    • 6 Comments
    Edit 2/8/2010: Updating for recent F# language changes. In our continuing series of how to solve Project Euler problems easily with F#, we now arrive at problem 34 which is defined as: 145 is a curious number, as 1! + 4! + 5! = 1 + 24 + 120 ...
  • Chris Smith's completely unique view

    Project Euler in F# - Problem 2

    • 6 Comments
    It’s been a few days, so here is Project Euler’s problem 2 in F#. Problem 2 is defined as follows: Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be: 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ... Find the sum of all the even-valued terms in the sequence which do not exceed one million. Sounds simple enough, here’s my Solution in F#......
  • Chris Smith's completely unique view

    Project Euler in F# - Problem 5

    • 6 Comments
    Here is a quick write-up on how to solve Project Euler’s Problem 5 in F#....
  • Chris Smith's completely unique view

    F# Snippets 01

    • 6 Comments
    This week I had the pleasure of writing some of our test automation infrastructure in F#. Not only does this give us a chance to dogfood the language, but it also helps us find pain points in the developer experience. For me at least, the biggest pain point right now is a lack of F# examples surrounding core syntax. But I would like to help combat this, so I've written a very simple app to show how to do basic object inheritance as well as implement an interface....
  • Chris Smith's completely unique view

    Being an Evil Genius with F# and .NET

    • 6 Comments
    A couple weeks ago I was in glorious Sandusky, Ohio presenting at CodeMash . CodeMash is a community driven conference that’s less about product announcements and typical “rah rah” and more about getting smart people together to talk about what they are...
  • Chris Smith's completely unique view

    F# Elevator Pitch

    • 6 Comments
    At the PDC I spent about eight hours a day for a full week answering the same question again and again: “What is F# and why should I use it.” While I would love to give a long and nuanced answer to this, in order to achieve a high throughput you need...
Page 1 of 7 (154 items) 12345»