F# May 2009 CTP and VS 2010 Beta1

By Adam Granicz on Friday, May 22, 2009 — 0 comments

You may have seen Don's announcement on the F# May 2009 CTP release just a couple days ago. What's absolutely thrilling about this CTP is that it also comes bundled with VS 2010 Beta1 (VS 2010 Beta1 is a download on its own, and has the F# May 2009 CTP integrated). Many of the F# folks have been waiting for this for literally years now - so let me share a bit of history on this.

My first real involvement with F# was around late 2003 - back then F# existed as an experimental compiler and later as a small VS plugin (which grew into the current CTP for the VS 2008 line) supplying the "F# Research Compiler" into Visual Studio. Don and James did an absolutely great job on the compiler - just about anyone who used F# got hooked, becoming an F# convert immediately. Yet almost no one we talked to outside of the small "early adopter" circle (fellow development managers, team leaders, architects, etc.) had any wild ideas like "F# will be the next .NET language that reshapes software development" or "functional programming is the future of .NET languages."

I don't know about you - but to us the potential of F# was as clear as the sky and we took every opportunity to evangelize and tell folks about F#. Back then only a few would listen (got some great stories there...) - and yes it was a painful experience to try to break the often thick ice for so long. But that stopped nothing. We simply went on talking about F#, seeking new ways to involve others in F#, and of course doing our own development work in F# - which is still the most fulfilling experience for us, a clear joy and undoubtedly a huge leap in productivity.

(Incidentally, not too much later the idea of writing a book on F# came up in the hopes of reaching wider adoption and getting the word out there to more people - something that Don tells me was pitched to him a few times before then but those initiatives somehow never took off. Our Expert F# book came out nearly two years after we started working on it - and it instantly became the #1 book on pragmatic functional programming. (Btw - it's great to see many other F# books pop up nowadays, that is precisely what F# needs right now.))

Anyhow, all this time and up until about early to mid 2008, interest in F# was growing quite steadily, I would say more so than anyone could expect. By this time the F# user base grew to tens of thousands and a lot of people started to bring issues about licensing, compatibility between versions, and the like - all sort of pointing towards two main desires: stability from the development's perspective (stable language features, tool support and integration, etc.) and adoption by decision makers.

You can read a lot about how F# is bridging the gap from the developer's perspective now that F# was picked up and taken ownership from Microsoft Research by the Microsoft Developer Division - the very same group that "decides" the future of C# and VB, Visual Studio, and anything else that has to do with reaching .NET developers. So you can be assured that you will be taken good care of as a developer.

But does that smooth the concerns of non-techies - those who ultimately decide on adoption in an organization? I would certainly hope so and all my advice would go in support of that. So I have taken this to be my next personal goal and to blog over the next couple weeks about how F# enabled us to be significantly more productive, yet blending perfectly with the development and project management side of things that you would consider standard even "cutting-edge" for small to medium .NET projects.

If you still have any doubt in your mind about F# or its massive adoption in the near future - think twice. You have all the official support from Microsoft now, you have the best ever F# integrated into the developer environment most of the .NET programmers use across the globe - what else do you need?