F# 1.1.13 now available!
I’m pleased to announce that F# 1.1.13 is now available! You can download this release from research.microsoft.com/fsharp/release.aspx .
This is an exciting release, containing many important enhancements to the language that make F# programming simpler, more powerful and easier to explain and understand. We’re particularly pleased with comprehensions, which, although found in other languages, works beautifully in conjunction with other F# language features such as pattern matching. These also simplify the use of many .NET APIs and collection types. We've also included named arguments, C# 3.0-style property setters and a host of improvements to the F# library, as well as a good number of bug fixes based on feedback from our rapidly expanding user base.
We've placed a summary of the changes in this release on a separate page, a short summary is below. We'll be blogging further about some of the new features in the coming weeks, and look out for the next draft installment of the Expert F# book, coming soon.
Language Enhancements
- Range Comprehensions. e.g.
{1 .. 3}
- IEnumerable, Array and List Comprehensions.
- Named arguments and post-hoc property-setters
- 'for' loops over enumerables.
- C-style syntax for native functions.
- Structs and Enums .
Slick member
syntax for object expressions.- Pattern matching on arrays.
- Tightening of
#light
rules. - Custom Attributes on parameters.
- Fast 'for' loops for Range Comprehensions.
Library Enhancements
Seq
as shorthand forIEnumerable
.- Extensive design review of F# namespaces.
- New library functions.
- Optional Safer Collections.
- New Module ResizeArray.
- NativeInterop additions NativeArray, CMatrix, FortranMatrix, PinnedArray, PinnedArray2
- Library addition: Matrix.copy, Vector.copy, Array2.copy, F# Immutable Map values now support the map.[i] syntax., Map, Set and HashSet now support IEnumerable
F# Interactive Enhancements
- TAB completion and history in F# Console.
Visual Studio Enhancements
- Visual Studio: Goto defintition across projects
- Improved speed of bracket matching in Visual Studio mode.
- Resources in projects: .resx resources may now be added to the list of files in the Visual Studio mode.
Compiler Enhancements
- Resources on the command line: .resx resources may now be added to the F# command-line compiler and as files in the Visual Studio mode.
- New switch
--generate-filter-blocks
.
Samples
- New LAPACK sample. . See samples\fsharp\math\LAPACK
- New WPF sample for use with F# Interactive. See samples\fsharp\WPF
Enjoy!
The F# Team
MSR Cambridge