# Overview
This is an initiative to create a more complete and community-maintainable F# spec.
Currently, we are converting the latest official spec FSharpSpec-4.1-latest.pdf
to markdown. We take the C# standard repository as inspiration and will follow their approach where possible, while staying pragmatic and mindful of our available resources.
The intention is to move the content to https://github.com/fsharp/fslang-spec once the necessary environment and processes have been set up in that repository.
fsharp
or fsgrammar
info string to code block fences for code and syntax, resp.
csharp
for C# code and fsother
for the few other cases.expr₁
) are typically auto-converted to expr 1
. We don't support subscripts and just remove the space (expr1
). An exception is the "opt" suffix, which we convert into ~opt (e.g. expr~opt
), so that we can later easily deal with it differently by using search-and-replace.|
like this \|
.> Note:
(see §9.1)
), no space between the §
and the number, as they will are automatically converted by the CreateLinks script (see below).Clauses.json
dotnet fsi CreateLinks.fsx <yourChapter.md>
.
This needs to be done only once during baseline creation. It changes your source file. It removes the section numbers in the headings and add links to all §x.x references. The operation, however, is idempotent.
build
, this will update spec.md
in the artifacts
directory, complete with ToC and reference links.Clause | Owner | Status | Review | Remarks |
---|---|---|---|---|
introduction | Martin521 | done | ||
program-structure | Martin521 | done | ||
lexical-analysis | Martin521 | done | ||
basic-grammar-elements | Martin521 | done | ||
types-and-type-constraints | edgarfgp | done | ||
expressions | Martin521 | done | ||
patterns | Martin521 | done | ||
type-definitions | Martin521 | done | ||
units-of-measure | Martin521 | done | ||
namespaces-and-modules | Martin521 | done | ||
namespace-and-module-signatures | Martin521 | done | ||
program-structure-and-execution | Martin521 | done | ||
custom-attributes-and-reflection | Martin521 | done | ||
inference-procedures | Martin521 | done | ||
lexical-filtering | Martin521 | done | ||
provided-types | edgarfgp | done | ||
special-attributes-and-types | Martin521 | done | ||
the-f-library-fsharpcoredll | Martin521 | done | ||
features-for-ml-compatibility | edgarfgp | done |