Welcome to MSDN Blogs Sign in | Join | Help

F# 1.9.2.7 released!

[ Update: F# 1.9.3 has been posted, and we don't expect any more 1.9.2 releases. ]

[ Update: the F# samples got dropped from this release - we'll be fixing that this week ]

[ Update: Granville has just posted a blog entry on how to get this version installing on Orcas Beta2 ]

[ Update: F# 1.9.2.9  has been posted (MSI, ZIP). This one contains the samples.  ]

 

[ Update: Known issues:

  • installation on Orcas Beta 2 - see above for workaround
  • problems with "--exec" on F# 1.9.2.9 - fixed but not included in this release
  • problems with F# Interactive in Visual Studio on some localized machines - has been fixed and the fix will be in the next update
  • a minor problem compiling the Samples101 sample or any projects that use RESX files directly on the command line, see http://cs.hubfs.net/forums/thread/3613.aspx for workaround 
  • the ConcurrentLife sample is busted in the 1.9.2.9 release. It will be fixed in later releases. Thanks to Ted Neward for pointing this out ]

About 8 days ago I gave a presentation at the Microsoft Faculty Summit, rounding off a major trip to Redmond for the F# Cambridge team. Whenever we give a major series of talks we like to release the version of F# we used at the talks. So, we've released F# 1.9.2.7 in both MSI and ZIP formats (use the MSI on Windows, and the ZIP on Mono - see updated links for 1.9.2.9 above). Also well done to James for pulling this release together.

Although we've put this through our standard test procedures, we haven't enabled this as the default download, partly because we're planning to make a couple of very minor tweaks to the new functionality (just a few library renamings).

So, here's what's new in 1.9.2! First the quick summary. I've also posted the complete release notes.

  • Slicing syntax. e.g. try arr.[1..5]. 2D-slices also available. No slice-setters as yet. See the full release notes.
  • Named Arguments. Calls to members (but not let-bound functions or function values) may use named arguments. Again see the full release notes. For example

                     System.Console.WriteLine(format="Hello {0}",arg0="World"

  • Optional Arguments. Members (but not let-bound functions) may have optional arguments. See the full release notes.
  • Hashing and equality on F# values. Recall that F# automatically implements comparison and hash semantics for tuple, record and discriminated union types (only). Now F# will also implement Object.GetHashCode and Object.Equals for these types. See the full release notes.
  • Language cosntructs for "computation expressions" (akin to Haskell monadic syntax). Details to follow in later posts (yes, I've whet your appetite, haven't I.... But this one needs a few separate blog entries...)
  • Library constructs for "asynchronous workflows". This is asynchronous and parallel programming using computation expressions. Details to follow in later posts again (those at the Faculty Summit and in Redmond last week have already seen a preview of this)

Other Language enhancements

  • Added "workflow" syntax updates. More details to follow.
  • Added [1..2] without spaces.
  • Added [< assembly : attributeExpr >] for assembly level attributes.
  • Added pattern matching on 64-bit numbers.
  • Added extension members (examples in F# programming library files control.fsi and control.fs).
  • Added datatype constructors used as first class functions.
  • Made begin/end optional for modules.
  • Made class/interface/struct-end optional in for type definitions.
  • Made with/end optional for type-augmentations.
  • Added __SOURCE_FILE__ and __LINE__.  

Library additions

  • Added Microsoft.FSharp.Plot.* interactive plotting previews.
  • Added Microsoft.FSharp.Collections.Permutation.
  • Added CodeDom provider.
  • Added typeof<ty>, sizeof<ty> as functions.
  • Adding ASP.NET samples.

Library minor changes

  • Additions to Seq module, e.g. orderBy, groupBy, countBy and sumByInt.
  • Additions to IEvent module, e.g. merge/split.
  • Additions to Quotations, added ReflectedTopDefn.
  • Added HashSet.Create for sequences.
  • Deprecated Idioms functions now available by other means.
  • Removed FlagsAttribute restriction on enum bit twiddling.
  • Deleted obsoleted CompatArray functions.

Bugs fixed:

  •     977 Fix: resx files compiled without change to cwd.
  •         Fix: FSI reflection emit support for constrained callvirt opcodes.
  •         Fix: Hashtbl copying bug.
  •         Fix: nested module/type loading bug.
  •         Fix: performance improvements to BigNat and BigInt.

Cheers!

Don, for the F# team...

Published Friday, July 27, 2007 1:05 AM by dsyme

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

Friday, July 27, 2007 1:30 AM by Tom Kirby-Green

# re: F# 1.9.2.7 released!

Don,

Is there any way, much as with the Lang .NET Syposium, that the presentations from the MSR Summit could be made available?

Kind regards,

tom

Friday, July 27, 2007 4:40 AM by Granville Barnett

# F# 1.9.2.7 is here

Just as I'm sure you are all caught up in the wave of new downloads in the last 24 hours here is one

Friday, July 27, 2007 9:36 AM by Walter Stiers - Academic Relations Team (BeLux)

# F# 1.9.2.7 released!

Don Syme's WebLog on F# and Other Research Projects mentions F# 1.9.2.7 released! . The quick summary.

Sunday, July 29, 2007 1:04 AM by joe coffey

# re: F# 1.9.2.7 released!

Looks great!  I can't seem to find Microsoft.Fsharp.Plot though.

Monday, July 30, 2007 12:56 AM by Chris Bowen's Blog

# A Guide to the Newly-Released Developer Updates

Though I managed to sneak away for some vacation time this week, it's clearly been a busy time for the

Friday, September 21, 2007 10:07 PM by Don Syme's WebLog on F# and Other Research Projects

# Some Details on F# Computation Expressions (aka "Monadic" or "Workflow" Syntax)

One of the things we added to F# in version 1.9.2 is a syntax for compuation expressions . These are

Saturday, September 22, 2007 3:54 AM by Noticias externas

# Some Details on F# Computation Expressions (aka "Monadic" or "Workflow" Syntax)

One of the things we added to F# in version 1.9.2 is a syntax for compuation expressions . These are

Wednesday, October 10, 2007 8:41 AM by Granville Barnett

# F# samples - not in 1.9.2.7 but in 1.9.2.9

For some reason I wanted to look at the samples again as it's been a long time since I took a peak at

Wednesday, October 10, 2007 9:03 PM by Don Syme's WebLog on F# and Other Research Projects

# Introducing F# Asynchronous Workflows

F# 1.9.2.9 includes a pre-release of new F# functionality called asynchronous workflows . In this blog

Thursday, October 11, 2007 4:17 AM by Walter Stiers - Academic Relations Team (BeLux)

# Introducing F# Asynchronous Workflows

Don Syme's WebLog on F# and Other Research Projects has the announcement of F# 1.9.2.9 including a pre-release

Thursday, October 11, 2007 4:26 AM by Noticias externas

# Introducing F# Asynchronous Workflows

Don Syme&#39;s WebLog on F# and Other Research Projects has the announcement of F# 1.9.2.9 including

Sunday, December 02, 2007 8:38 AM by PS

# F# Editor doesn't work

Hello, I have Visual Studio 2005 SP1. I've installed F# Extensions for VS, ver. 1.9.2.9. I can use F# Interactive window and compile projects, but IntelliSense doesn't work with .ml files. What can I do to solve this? I've installed F# with alternative-install.bat and alternative-install-vs2005.bat, because MSI installation failed.

Sunday, December 02, 2007 9:26 PM by dsyme

# re: F# 1.9.2.7 released!

Hi PS,

Try 1.9.3, which has just been released.  http://blogs.msdn.com/dsyme/archive/2007/11/30/f-1-9-3-candidate-release-now-available.aspx

Cheers!

Don

Monday, December 03, 2007 4:04 AM by PS

# re: F# 1.9.2.7 released!

I've tried! The same problem :(

Previously I had an earlier version of F#, everything worked great, including IntelliSense support, but VS integration ceased to work after installation of VS SP1, so i've had to reinstall F#.

Monday, December 03, 2007 11:58 AM by dsyme

# re: F# 1.9.2.7 released!

Hi PS,

Could you send us a full trace

 - Environment variables (run "setenv")

 - OS (Vista/XP etc.)

 - Are you an admin on the machine?

 - Follow the instructions in the README-fsharp.html re. looking for particular registry settings.

Send to fsbugs ATT microsoft DOTT com

Thanks

Don

Friday, January 04, 2008 7:55 PM by Don Syme's WebLog on F# and Other Research Projects

# The FParsec library by Stephan Tolksdorf

Stephan Tolksdorf has been a regular F# user of late and has provided us with much excellent feedback,

Friday, January 04, 2008 8:19 PM by Noticias externas

# The FParsec library by Stephan Tolksdorf

Stephan Tolksdorf has been a regular F# user of late and has provided us with much excellent feedback

Leave a Comment

(required) 
required 
(required) 

  
Enter Code Here: Required
 
Page view tracker