Updated F# Language Specification for F# 3.0 Now Available

Further information on the F# Community can be found at fsharp.org, which also hosts a copy of this specification. 

The Visual F# team are glad to announce that we have now updated the F# Language Specification for F# 3.0.

The aim of this update is to document the language features introduced in F# 3.0.  This update covers  the extensions to computation expressions to enable query expressions (see also this video), the CLIMutable attribute, triple-quoted strings, the updates to the ReflectedDefinition attribute that allow it to be used on modules and types, and the "member val" syntax declaration for auto-properties. We've also had the help of Penny Orwick, who has gone over the specification for style an correctness, and added a glossary and index. The F# 3.0 type provider feature is a part-language, part-tooling feature, and is not included in the specification in this update beyond the introduction. See the MSDN material on type providers and the MSDN guide on how to write a type provider. A technical report about the feature and its applications is also available from our partner team in Microsoft Research.

Thanks to everyone who has given feedback on earlier versions of the specification, and to everyone who has helped contribute to these updates to the specification.  

Wonseok Chae, for The Visual F# Team