Async and Parallel Design Patterns in F#: Agents

In part 3 of this series, we explore lightweight, reactive agents in F# and look at some typical design patterns associated with these agents, including isolated internal state.  Part 1 describes how F# is a parallel and reactive language with support for light-weight reactions, and gives patterns for parallel CPU asyncs and parallel I/O asyncs.  Part 2 described a pattern for … Continue reading Async and Parallel Design Patterns in F#: Agents

Detailed Release Notes for F# February 2010 Release

Today we have announced the February 2010 release of the F# language. The detailed release notes for this release are below. Language   XML Doc Comments. You can now specify <summary>, <remarks>, <parameters> and other attributes explicitly. XML Doc comments are checked for basic validity when the comments are displayed by the F# Visual Studio … Continue reading Detailed Release Notes for F# February 2010 Release

Async and Parallel Design Patterns in F#: Reporting Progress with Events (plus Twitter Sample)

In this post we will look at a common async design pattern I call Reporting Progress With Events. Later in this post we use this design pattern to read a sample stream of tweets from Twitter. This is the second part of a series covering basic techniques in F# async programming. Some of the samples are … Continue reading Async and Parallel Design Patterns in F#: Reporting Progress with Events (plus Twitter Sample)

Async and Parallel Design Patterns in F#: Parallelizing CPU and I/O Computations

  F# is both a parallel and a reactive language. By this we mean that running F# programs can have both multiple active evaluations (e.g. .NET threads actively computing F# results), and multiple pending reactions (e.g. callbacks and agents waiting to react to events and messages).     One simple way to write parallel and reactive … Continue reading Async and Parallel Design Patterns in F#: Parallelizing CPU and I/O Computations

F# Interactive Tips and Tricks: Formatting Data using AddPrinter, AddPrintTransformer and %A in sprintf/printf/fprintf

Mingtian Ni asked the following: I ‘d like to change the output format for certain types, especially collection types, in fsi. What are the reasonable ways for this? ... Can somebody give a few references here? Or even better with guidelines and working examples. Here are some tips and tricks for formatting data in F# … Continue reading F# Interactive Tips and Tricks: Formatting Data using AddPrinter, AddPrintTransformer and %A in sprintf/printf/fprintf

Unleash those transistors! General Purpose GPU and x64 Data Parallel Multicore Programming with Accelerator from F#

One of my colleagues at MSR Cambridge, Satnam Singh, has written his very first blog entry, and what a beauty it is!  Data parallel multicore programming from F# targeting both CPU and GPU - what joy! Microsoft recently released a preview of the Accelerator V2 GPU and x64 multicore programming system on Microsoft Connect. This system provides a … Continue reading Unleash those transistors! General Purpose GPU and x64 Data Parallel Multicore Programming with Accelerator from F#

F# 1.9.7 Language Specification Now Available

The F# 1.9.7 Language Specification is now available, in PDF and HTML, matching the recent release of F# in Visual Studio 2010 Beta2, with matching CTP udpate for Mono and Visual Studio 2008. The latest language specification can also always be found via http://www.fsharp.net Many thanks to all those who sent so much helpful feedback on the … Continue reading F# 1.9.7 Language Specification Now Available

Language Integrated Query (LINQ) Support in the F# Power Pack

In this post I thought I would give some simple, up-to-date examples of writing queries using the F# Power Pack and executing them via LINQ. The techniques described here also apply to querying any obejcts that support the IQueryable interface.   My aim here is not to give a complete guide to "doing everything you can … Continue reading Language Integrated Query (LINQ) Support in the F# Power Pack

Some Smaller Features in the Latest Release of F#

Brian has blogged about some of the smaller features in the latest release of F# which weren't explicitly called out in the detailed release notes. Error and warning messages have unique numbers (in particular replacing the ubiquitous "FS0191") Some common error diagnostics have been improved VS2010 Beta2 has more item tempaltes I'll add a few here as … Continue reading Some Smaller Features in the Latest Release of F#

F# in Visual Studio 2010 Beta2 is now available ( plus matching F# CTP Update for VS2008)

The latest release of F# is now out! This is included in Visual Studio 2010 Beta2 , released today for MSDN Subscribers, with the matching release of the F# CTP for Visual Studio 2008, and a compiler ZIP for Mono. The detailed release notes are here. (Note: general download availability of Visual Studio 2010 Beta2 will begin in … Continue reading F# in Visual Studio 2010 Beta2 is now available ( plus matching F# CTP Update for VS2008)

Release Notes for the F# October 2009 release

  (These notes apply to the F# October 2009 CTP update and Visual Studio 2010 Beta2)   Summary Release F# in Visual Studio2010 Beta2 can build applications for .NET 2.0/3.0/3.5/4.0 and Silverlight 2/3.  Updated F# CTP for Visual Studio 2008 F# PowerPack available as part of the CTP Update, and can be used with either … Continue reading Release Notes for the F# October 2009 release

Detailed Release Notes for the F# May 2009 CTP Update and Visual Studio 2010 Beta1 releases

The main announcement for this release is here.   Summary Release F# is integrated into Visual Studio 2010 Beta1 F# in Visual Studio2010 can build applications for .NET 4.0 Beta1 Updated F# CTP for Visual Studio 2008 and .NET 2.0/3.0/3.5 F# PowerPack is a separate download for Visual Studio 2010 F# binaries compiled with this … Continue reading Detailed Release Notes for the F# May 2009 CTP Update and Visual Studio 2010 Beta1 releases

Visual Studio 2010 Beta1 with F# is now available, plus matching F# CTP Update for VS2008

The F# team are thrilled to announce that Visual Studio 2010 Beta1 is now available , including the latest version of F#. Today we are also releasing a matching F# May 2009 CTP for use with Visual Studio 2008 (MSI, ZIP). Further below is a screen shot, more here. If you’re new to F#, consider watching the PDC … Continue reading Visual Studio 2010 Beta1 with F# is now available, plus matching F# CTP Update for VS2008

Adding Parallel Extensions to F#, from Matt Podwysocki

Matt has a lovely post showing how to define parallel sequences in F#: In many of my presentations lately, I’ve been using the Parallel Extensions for .NET as part of my heavy computations in F#.  By doing so, I’m able to speed up some of my heavier computations by several fold and take full advantage … Continue reading Adding Parallel Extensions to F#, from Matt Podwysocki

F# Programming Contest, by Kean at AutoDesk

Kean over at AutoDesk (think AutoCAD etc.) is running an F# programming contest! I've included his post below: F# programming contest ... So to start 2009 with a bang (or a pop, at least) I'm going to run a programming contest. The basic idea is to generate some cool examples of using functional programming (more specifically … Continue reading F# Programming Contest, by Kean at AutoDesk

F# to ship as part of Visual Studio 2010

Last year, the head of the Microsoft’s Developer Division, S. Somasegar, announced that Microsoft had begun investing in F# as one of Microsoft’s supported languages on the .NET platform. I am now thrilled to announce one result of this investment: F# will ship as part of Visual Studio 2010! Since the September 2008 CTP of … Continue reading F# to ship as part of Visual Studio 2010

The F# Operators and Basic Functions

F# comes with a number of essential basic functions and operators pre-defined. For example, even "+" is an operator defined in Microsoft.FSharp.Core.Operators, which is opened by default. Likewise "abs" is a function to take the absolute value of a signed integer or floating point number, and "int64" is a function that converts its input to a … Continue reading The F# Operators and Basic Functions

F# Optimization Modeling Language Sample Utilizing Microsoft Solver Foundation

The first version of the F# Optimization Domain Specific Language (ODSL) sample is now available, built with the new Microsoft Solver Foundation. Solver Foundation is a framework of solvers and modeling services enabling planning, risk modeling, and scheduling for .NET developers. It is integrated with the full power of the NETfx 3.5+ platform including LINQ for … Continue reading F# Optimization Modeling Language Sample Utilizing Microsoft Solver Foundation

An introduction to Units of Measure by Andrew Kennedy

Andrew Kennedy has published the first part of a tutorial introduction to Units of Measure in F#. Do you remember NASA's Mars Climate Orbiter? It was lost in September 1999 because of a confusion between metric and so-called "English" units of measurement. The report into the disaster made many recommendations. In all likelihood, the accident could … Continue reading An introduction to Units of Measure by Andrew Kennedy

Detailed Release Notes for the F# September 2008 CTP release

These are the detailed release notes for the F# September 2008 CTP release. The release announcement is here. We will be publishing a known issues list here shortly and augmenting it as new issues are found. [ Update: The following issues were addressed in the 1.9.6.2 update to the CTP on 6 Sep 2008     … Continue reading Detailed Release Notes for the F# September 2008 CTP release

The F# September 2008 CTP is now available!

I’m very pleased to announce the availability of the F# September 2008 CTP Release, launched via the new MSDN F# Developer Center. This release represents an important step in the evolution of the F# language as we progress it towards a fully supported language for the .NET platform. A huge thank you to both the F# team and … Continue reading The F# September 2008 CTP is now available!

FSCheck 0.2

Kurt Schelfthout has jsut updated FSCheck, an F# version of QuickCheck. Here's how Kurt described FSCheck in his v0.1 announcement: FsCheck is a tool for testing F# programs automatically. The programmer provides a specification of the program, in the form of properties which functions should satisfy, and FsCheck then tests that the properties hold in … Continue reading FSCheck 0.2

1.9.4.19 release

We've posted a minor update to version 1.9.4 (called 1.9.4.19). The change notice is in the README and below. There are three fixes/changes in this release Ø There was a glitch that prevented F# version 1.9.4.17 programs working well on Mono. A workarounds was mentioned here http://laurent.le-brun.eu/site/index.php/2008/06/05/36-how-to-use-fsharp-1-9-4-17-on-mono, though this workaround should now no longer be needed. … Continue reading 1.9.4.19 release

Updated Specification for the 1.9.4 “Spring Refresh” Release

I've just updated the links on the F# manual pages to point to the updated draft language specification (one big HTML page, or PDF) for the 1.9.4 release. This is a major revision of the old spec to cover much of the language work done in the 1.9.4 release. It's from us at Microsoft Research, so isn't … Continue reading Updated Specification for the 1.9.4 “Spring Refresh” Release

“F# for Numerics” released

Flying Flog Consulting have recently published F# for Numerics. Here's how they describe the library: Our new F# for Numerics library is a suite of numerical methods that leverage functional programming with F#... This library implements numerical methods from a variety of different disciplines in a uniform way ...: Local and global function minimization and … Continue reading “F# for Numerics” released

From Script to .NET Component: Huffman Coding with F#

Luke Hoban has a very nice blog entry that shows an implementation of Huffman Coding with F#. This not only shows of F# as an algorithmic problem-solving language, but, just as importantly, shows just how elegant and smooth it is to take this code and produce a .NET object-oriented component that encapsulates a Huffman encoder for use from other .NET … Continue reading From Script to .NET Component: Huffman Coding with F#

F# 1.9.4 Now Available: Making F# Simpler and More Consistent

 [ Note: we have made a minor update to 1.9.4 called 1.9.4.19. The download links below point to this release. If you need 1.9.4.17 go to our downloads page. ]    [ Note: download links updated to point to the MSI correctly ]   We're very glad to announce the release of F# 1.9.4, the Spring Refresh of F#, uploaded … Continue reading F# 1.9.4 Now Available: Making F# Simpler and More Consistent

Kean Walmsley on using F# Asynchronous Workflows to simplify concurrent programming in AutoCAD

On Friday Kean Walmsley posted an excellent article on Using F# Asynchronous Workflows to simplify concurrent programming in AutoCAD.I've quoted some it below. There are two things I especially like about this post. First, Kean's code is very clean and some of the best F# app-extension scripting I've seen. Second, Kean took the time to highlight the minor … Continue reading Kean Walmsley on using F# Asynchronous Workflows to simplify concurrent programming in AutoCAD

Update to the F# 1.9.3 Release

Hi all, An update to the F# 1.9.3 release has been posted to the Microsoft Research Downloads site. Additional changes between1.9.3.7 and 1.9.3.14 are: Constructed classes may now be mutually recursive with other types, fixing an incompletness in the language implementation The Microsoft.FSharp.Core.Func module is deprecated (this contained a few rarely used functions related to … Continue reading Update to the F# 1.9.3 Release

Greg Neverov: Software Transactional Memory for F#

Greg Neverov (of active patterns fame) has placed an implementation of Software Transactional Memory for F# up on hubFS. Here's the description: I have written a library for using software transactional memory in F#. The library exposes memory transactions as a monad using F#’s new computation expression feature. It can be downloaded here. Software transactional … Continue reading Greg Neverov: Software Transactional Memory for F#

Full Release Notes for F# 1.9.3.7 and 1.9.3.14

I'm glad to say that a release candidate for  F# 1.9.3 is now available (download via main post). The changes up to 1.9.3.7 are documented further below. Additional changes between1.9.3.7 and 1.9.3.14 are: Constructed classes may now be mutually recursive with other types, fixing an incompletness in the language implementation Microsoft.FSharp.Core.Func module is deprecated (this … Continue reading Full Release Notes for F# 1.9.3.7 and 1.9.3.14

F# 1.9.3 Candidate Release Now Available!

[ Update: The release candidate has been updated to F# 1.9.3.14. The additional changes are documented with the release notes below ] I'm very glad to say that an updated release candidate for  F# 1.9.3 is now available (MSI, ZIP). This is F# 1.9.3.14. Here are the full release notes for 1.9.3.14. This is primarily a stabilization … Continue reading F# 1.9.3 Candidate Release Now Available!

F# At TechEd Developers in Barcelona

I've just arrived in Barcelona, for TechEd Developers. What an event! First, on the product side, there are just so many great things going on: Visual Studio 2008 is on show, the Microsoft Sync Framework has been announced, the ultra-cool Popfly shows how non-traditional development can be on the client side, as well as the host of … Continue reading F# At TechEd Developers in Barcelona

Software Development Engineer in Test: Position on the F# Team

The F# team is hiring! This position is for a QA engineer on the F# team. From the Microsoft website: We are looking for an experienced Software Design Engineer in Test to work on testing the F# language and compiler. Opportunities include working with some of the brightest minds in the community on the latest … Continue reading Software Development Engineer in Test: Position on the F# Team

Software Development Engineer Position on the F# Team

The F# team are hiring! We have two positions open right now. The first is a software development engineer specializing in Visual Studio.  We’re looking for an exceptional developer to work on integration with the Visual Studio editor and debugger, and with Technical Computing libraries. You will be a key designer/engineer on our team, responsible … Continue reading Software Development Engineer Position on the F# Team

Robert on “Understanding how Asynchronous Workflows Work”

Robert Pickering has just posted a nice blog entry showing how programs look if you don't have asynchronous workflows. As Don Syme points out in his piece on asynchronous workflows, they are not about getting the whole of concurrency right but rather about getting asynchronous I/O right.  I think that to fully appreciate the beauty … Continue reading Robert on “Understanding how Asynchronous Workflows Work”

Introducing F# Asynchronous Workflows

[ Update: Robert pickering has a very nice summary of using asynchonous workflows with web services ] F# 1.9.2.9 includes a pre-release of F# asynchronous workflows. In this blog post we'll take a look at asynchronous workflows and how you might use them in practice. Asynchronous workflows are an application of F#'s computation expression syntax. … Continue reading Introducing F# Asynchronous Workflows

Some Details on F# Computation Expressions

One of the things we added to F# in version 1.9.2 is a syntax for computation expressions. These are a generalization of the sequence expressions added in F# 1.9.1.  In this post I'll drill down on some more technical details on sequence expressions and computation expressions, as a preliminary for later posts showing their use. If you're new to … Continue reading Some Details on F# Computation Expressions

Introducing “use” bindings in F# 1.9.2

F# 1.9 is seeing the rollout of a number of additions to the F# language, and this is the first of a series of blog entries on these.  For starters, the 1.9.2 release has seen the addition of "use" bindings. Here is a simple example:     let writePlayList() =         use outp = File.CreateText(@"playlist.txt")     … Continue reading Introducing “use” bindings in F# 1.9.2

Full Release Notes for F# 1.9.2.7

Here are the full release notes for F# 1.9.2.7. Slicing syntax The following syntax forms     expr := ...           | e1.[range1]           | e1.[range1,range2]       range := e2..e3            | ..e3            | e2..            | * represent slicing from a 1D or 2D data structures that supports associative lookup on ordered keys. In … Continue reading Full Release Notes for F# 1.9.2.7

Using F# active patterns with LINQ expression trees

Luis Diego Fallas has written a nice blog entry on using F# active patterns to ease the process of working with LINQ expression trees. This kind of "meta-programming" application is absolutely one of the key reasons why Greg Neverov, James Margetson and myself added the feature to F#. I'm very glad to see Luis putting the pieces together and explaining what's … Continue reading Using F# active patterns with LINQ expression trees

More on the overloaded conversion operators in 1.9.1.9

F# 1.9.1.9 includes an addition that can substantially simplify F# numeric code. This provides a solution for a problem that has been present in F# programming from the start, but is not present in many other languages. In particular, the functions int, float, float32 etc. are now defined as overloaded conversion operators. For example, you can replace … Continue reading More on the overloaded conversion operators in 1.9.1.9

F# 1.9.1.9 available (currently MSI only): Includes overloaded numeric conversion functions and checked arithmetic

Hi all, I'm glad to announce the availability of F# 1.9.1.9. It's available for download from this link: http://research.microsoft.com/research/downloads/details/c8d270ce-dc93-4b82-8125-2c57036520b3/details.aspx This is in general a bug fix release over 1.9.1.8, with some exceptions We've added two great new features: Overloaded numeric conversion functions. The functions int, float, float32 etc. now overloaded conversion operators. For example, you can … Continue reading F# 1.9.1.9 available (currently MSI only): Includes overloaded numeric conversion functions and checked arithmetic

HDFS – Hardware Design Using F#, version 0.2

  On hubFS AndyMan has recently announced "Hardware Design F#", HDFS, Version 0.2, based on a port of HDCaml, by Tom Hawkins, though rapidly acquiring a life of its own.  I blogged about version 0.1 a while back. Here are his release highlights:   The project has moved home. Now at  http://code.google.com/p/hdfs/ and  http://groups.google.com/group/hdfsharp Revised circuit design API.  Where … Continue reading HDFS – Hardware Design Using F#, version 0.2

Detailed Release notes for 1.9.1.8

Detailed Release Notes for release 1.9.18 of the F# Compiler and Tools.   http://research.microsoft.com/research/downloads/details/b46c7032-149c-4da3-a027-7768210a158d/details.aspx [ Note: we've had one report of an installation issue on Windows XP, and one on Windows Vista. If you have a problem try installing the VC runtime libraries http://www.microsoft.com/downloads/details.aspx?FamilyID=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=enPlease let us know if you have problems, by emailing us at "fsbugs at microsoft … Continue reading Detailed Release notes for 1.9.1.8

F# 1.9.1.8 Released!

[ Note: An update to this release has been announced: see version 1.9.1.9 at http://blogs.msdn.com/dsyme/archive/2007/05/06/f-1-9-1-9-available-currently-msi-only-includes-overloaded-numeric-conversion-functions-and-checked-arithmetic.aspx %5D I am very pleased to announce that F# 1.9.1 is now available for download. This is a major release for us, a first step toward F# 2.0, and incorporating two exiciting new features: Active Patterns and Implicit Class Construction. The … Continue reading F# 1.9.1.8 Released!

F# 1.1.13 detailed release notes

  I’m pleased to announce that F# 1.1.13 has been released. The original release announcement is here. You can download this release from http://research.microsoft.com/fsharp/release.aspx . A summary of the changes in this release is given below (in some cases these updating the changes in the README-fsharp.html from the distribution)   Enjoy!   Don and James … Continue reading F# 1.1.13 detailed release notes

F# on Channel 9

Recently I had the pleasure of talking with Mike Hall and a DV Camera for an hour, the end result being two F# videos/interviews recently posted on Channel 9. There are two parts:                   Interview by Mike Hall                 The F# WebCrawler and DirectX demos   Thanks to Damien Watkins for arranging this :-)  

Draft Chapter 2 of “Expert F#”: Essential Language Features

  [ Note: this post is now out-of-date: drafts of Chapters 2-7 are now available ]    I'm very glad to announce the availability of an early draft of Chapter 2 of a book on F# which I'm currently in the process of co-authoring.  The projected title of the book is, unabashedly, "Expert F#". This is one of two F# books planned … Continue reading Draft Chapter 2 of “Expert F#”: Essential Language Features

Detailed release notes for 1.1.12.3

Detailed release notes for 1.1.12.3   Collected changes between v1.1.11.12 and 1.1.12.3 Lightweight syntax option. Are you sick of writing in? The #light option makes the use of certain keywords such as in optional by using indentation. See the informal language specification for details, as well as the ConcurrentLife sample and the Samples101 tutorial. Enable … Continue reading Detailed release notes for 1.1.12.3

Lightweight syntax option in F# 1.1.12.3

We're glad to announce that F# 1.1.12.3 supports the optional use of lightweight syntax through the use of whitespace to make indentation significant.  At the time of this release this is an experimental feature, though it is assumed that its use will become widespread. The F# indentation-aware syntax option is a conservative extension of the … Continue reading Lightweight syntax option in F# 1.1.12.3

F# 1.1.12 now released!

We're very pleased to announce that F# 1.1.12 is available for download. (note: since the time of writing this has been updated to F# 1.1.12.5) This release incorporates a significant number of minor improvements combined with two new features: a lightweight syntax option and a feature called Active Patterns.   Both are considered "beta" features: minor changes … Continue reading F# 1.1.12 now released!

An upcoming experimental feature: Active Patterns in F#

Greg Neverov (inventor of the C# dialect Metaphor and an intern at MSR Cambridge this summer) has been working on an experimental new language feature called "active patterns".  This topic has come up on The Hub, so I thought I would mention a bit about it here, though I will only be able to give a brief taste … Continue reading An upcoming experimental feature: Active Patterns in F#

On The Hub: F# and ASP.NET 2.0 (CodeDom provider)

The Microsoft MVP Tomas Petricek has been continuing his exploration of F# LINQ-style quotations to implement a first cut at an F# CodeDom provider, with a view to building entire web applications in F# alone.  He's posted a blog entry on The Hub (n.b. you currently have to register with The Hub for this entry): I was recently … Continue reading On The Hub: F# and ASP.NET 2.0 (CodeDom provider)

Detailed Release Notes for F# 1.1.11.7

  The full change list for F# 1.1.11.6 is below. Here's the list of fixes we've made between F# 1.1.11.6 and F# 1.1.11.7:    --   Permit the use of lambdas taking multiple tupled arguments within quotations.    --   Fix integer formats 0b101001 and 0o101030 in fsi.exe (thanks to Robert Pickering for this one)    --   Fix inlining of composition operator    … Continue reading Detailed Release Notes for F# 1.1.11.7

.NET Developer Journal: Grid Computing with F#

Chad Albrecht has written an article for the recent edition of .NET Developers Journal called F# on a Virtual Super Computer.  It uses the excellent Alchemi grid computing framework from my the University of Melbourne (a wonderful institution from my home country that also brought us Mercury, whose design and implementation of existential types strongly influenced my decision … Continue reading .NET Developer Journal: Grid Computing with F#

F# for games and machine learning: .NET + performance + scripting

Ralf Herbrich is a co-leader of MSR Cambridge's Applied Games Group, which specializes in using machine learning techniques such as TrueSkill to improve the player experience of XBox Live and other applications.  He's now also an F# user and advocate, having recently succesfully used F# to rapidly perform new, experimental analysis of masses of new … Continue reading F# for games and machine learning: .NET + performance + scripting

F# First Class Events: Simplicity and Compositionality in Imperative Reactive Programming

The text of this post is also available as an article, which I'll modify with latest material on this topic as time goes on. As of version 1.1.10, F# now supports first-class, composable events. Here 'events' is used in the same sense as in the C# language, but you'll notice some important differences in how events … Continue reading F# First Class Events: Simplicity and Compositionality in Imperative Reactive Programming

Simplicity and Compositionality in Asynchronous Programming through First Class Events (Article Version)

Updates to this article from the original blog version based on reader comments are marked in purple! As of version 1.1.10, F# now supports first-class, composable events. Here 'events' is used in the same sense as in the C# langauge, but you'll notice some important differences in how events appear in the language design and in practical … Continue reading Simplicity and Compositionality in Asynchronous Programming through First Class Events (Article Version)

FJavaC (a functional Java compiler) now on F# using Mono

Stephen Tse of UPenn has just completed his cross-compilation of FJavaC with F# and OCaml, using F# 1.1 on Mono/Linux (he's made some notes about using F# with Mono/Linux on the F# Wiki - some further notes are below).  To quote their website, FJavaC is  "a Java 5 compiler ... our long term goal is to produce a complete and … Continue reading FJavaC (a functional Java compiler) now on F# using Mono

Detailed release notes for F# 1.1.8.1

A summary of the changes and additions for F# between 1.1.5.2 and 1.1.8.1 is as follows: ·         Expression Quotation now called Microsoft.FSharp.Quotations contains a range of functionality related to "lifted expressions", i.e. expression quotation, which is a form of meta-programming. This is still under development, and some important functionality is missing or incomplete, but is … Continue reading Detailed release notes for F# 1.1.8.1

F# meets LINQ, and great things happen (Part I)

  [ Note: a later, more up-to-date post decribes F# Power Pack LINQ support ] In case you haven't heard, LINQ (Language Integrated Queries) is Microsoft's project codename for adding a range of features to C# and Visual Basic to allow programmers to write "language-integrated query, set, and transform operations".  The idea is to use a combination … Continue reading F# meets LINQ, and great things happen (Part I)

Some work in progress for F# 1.0.1 (the second 1.0 preview release)

I thought I would mention some details of the features I've been working on for the next preview release of F# 1.0.  Firstly, the main thing: intellisense.  This has been a joy to implement: the code for the Visual Studio plugin can access the internal lexer, parser, type checker and type-checking data structures of the … Continue reading Some work in progress for F# 1.0.1 (the second 1.0 preview release)