Title | Description |
|---|
Functions (F#) | Functions are the fundamental unit of program execution in any programming language. As in other languages, an F# function has a name, can have parameters and take arguments, and has a body. F# also supports functional programming constructs such as treating functions as values, using unnamed functions in expressions, composition of functions to form new functions, curried functions, and the implicit definition of functions by way of the partial application of function arguments. |
F# Types | Describes the types that are used in F# and how F# types are named and described. |
Type Inference (F#) | Describes how the F# compiler infers the types of values, variables, parameters and return values. |
Automatic Generalization (F#) | Describes generic constructs in F#. |
Inheritance (F#) | Describes inheritance, which is used to model the "is-a" relationship, or subtyping, in object-oriented programming. |
Members (F#) | Describes members of F# object types. |
Parameters and Arguments (F#) | Describes language support for defining parameters and passing arguments to functions, methods, and properties. It includes information about how to pass by reference. |
Operator Overloading (F#) | Describes how to overload arithmetic operators in a class or record type, and at the global level. |
Casting and Conversions (F#) | Describes support for type conversions in F#. |
Access Control (F#) | Describes access control in F#. Access control means declaring what clients are able to use certain program elements, such as types, methods, functions and so on. |
Patterns (F#) | Describes patterns, which are rules for transforming input data that are used throughout the F# language to extract compare data with a pattern, decompose data into constituent parts, or extract information from data in various ways. |
Active Patterns (F#) | Describes active patterns. Active patterns enable you to define named partitions that subdivide input data. You can use active patterns to decompose data in a customized manner for each partition. |
Assertions (F#) | Describes the assert expression, which is a debugging feature that you can use to test an expression. Upon failure in Debug mode, an assertion generates a system error dialog box. |
Exception Handling (F#) | Contains information about exception handling support in the F# language. |
Attributes (F#) | Describes attributes, which enable metadata to be applied to a programming construct. |
Resource Management (F#) | Describes the keywords use and using, which can control the initialization and release of resources |
Namespaces (F#) | Describes namespace support in F#. A namespace lets you organize code into areas of related functionality by enabling you to attach a name to a grouping of program elements. |
Modules (F#) | Describes modules. An F# module is a grouping of F# code, such as values, types, and function values, in an F# program. Grouping code in modules helps keep related code together and helps avoid name conflicts in your program. |
Import Declarations: The open Keyword (F#) | Describes how open works. An import declaration specifies a module or namespace whose elements you can reference without using a fully qualified name. |
Signatures (F#) | Describes signatures and signature files. A signature file contains information about the public signatures of a set of F# program elements, such as types, namespaces, and modules. It can be used to specify the accessibility of these program elements. |
XML Documentation (F#) | Describes support for generating documentation files for XML doc comments, also known as triple slash comments. You can produce documentation from code comments in F# just as in other .NET languages. |
Verbose Syntax (F#) | Describes the syntax for F# constructs when lightweight syntax is not enabled. Verbose syntax is indicated by the absence of the #light directive at the top of the code file. |