Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fsharp/fslang-spec
F# Language Specification
https://github.com/fsharp/fslang-spec
Last synced: 3 months ago
JSON representation
F# Language Specification
- Host: GitHub
- URL: https://github.com/fsharp/fslang-spec
- Owner: fsharp
- License: mit
- Created: 2024-03-12T14:38:46.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-07-28T06:31:07.000Z (5 months ago)
- Last Synced: 2024-09-30T06:21:48.688Z (3 months ago)
- Language: F#
- Size: 40 KB
- Stars: 21
- Watchers: 7
- Forks: 1
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# fslang-spec
F# Language Specification## Overview
This is an initiative to create a more complete and community-maintainable F# spec.
This will be no small task, but we believe it is worthwhile and we count on community contributions.
We foresee three phases:
1. Convert the [latest official spec](https://fsharp.org/specs/language-spec/4.1/FSharpSpec-4.1-latest.pdf) to markdown and create the structure and tools to make it community-maintainable. This is done.
2. Add the post-4.1 features as documented in the [RFCs](https://github.com/fsharp/fslang-design/) to the spec. Our goal: a complete F# 10 spec.
3. Make spec update part of new feature development so that an up-to-date spec can be released with every new major compiler release.## Process
The spec is in the end closely coupled to the language design and therefore needs a) strong community contributions and b) a clearly defined final responsibility, which will be similar to the one of the [language design process](https://github.com/fsharp/fslang-design?tab=readme-ov-file#who-is-in-charge).
We foresee the following types of contributions:
- Issues and/or PRs for bug fixes.
- PRs for integration of an accepted and implemented RFC.
- Issues for proposing and discussing smaller or larger improvements to the spec
- PRs for such improvements, once the discussion converges and/or is decided by the team in chargeAll PRs need to be accepted by two team reviewers for merging.
## Repository structure
The sources are the markdown files for the chapters (clauses) in the `spec` directory.
Run `build` to create a new complete spec (including ToC and updated reference links) in your `artifacts` directory.At certain points, releases are created and published in the `releases` directory.