F Sharp (programming language)
| F# | |
|---|---|
| Paradigms | Multi-paradigm: functional, imperative, object-oriented, agent-oriented, metaprogramming, reflective, concurrent |
| Family | ML: Caml: OCaml |
| Designed by | Don Syme, Microsoft Research |
| Developer | Microsoft, The F# Software Foundation |
| First appeared | 2005, version 1.0 |
| Stable release | 9.0[1]
/ 12 November 2024 |
| Typing discipline | Static, strong, inferred |
| OS | Cross-platform: .NET framework, Mono |
| License | MIT[2][3] |
| Filename extensions | .fs, .fsi, .fsx, .fsscript |
| Website | fsharp
|
| Influenced by | |
| C#, Erlang, Haskell,[4] ML, OCaml,[5][6] Python, Scala | |
| Influenced | |
| C#,[7] Elm, F*, LiveScript | |
| |
F# (pronounced F sharp) is a general-purpose, high-level, strongly typed, multi-paradigm programming language that encompasses functional, imperative, and object-oriented programming methods. It is most often used as a cross-platform Common Language Infrastructure (CLI) language on .NET, but can also generate JavaScript[8] and graphics processing unit (GPU) code.[9]
F# is developed by the F# Software Foundation,[10] Microsoft and open contributors. An open source, cross-platform compiler for F# is available from the F# Software Foundation.[11] F# is a fully supported language in Visual Studio[12] and JetBrains Rider.[13] Plug-ins supporting F# exist for many widely used editors including Visual Studio Code, Vim, and Emacs.
F# is a member of the ML language family and originated as a .NET Framework implementation of a core of the programming language OCaml.[5][6] It has also been influenced by C#, Python, Haskell,[4] Scala and Erlang.
- ^ https://github.com/dotnet/fsharp/releases/tag/v12.9.100-beta.24522.2.
{{cite web}}: Missing or empty|title=(help) - ^ "F# Software Foundation's License". GitHub. 14 October 2021.
- ^ "Microsoft's F# License". GitHub. 16 October 2021.
- ^ a b Syme, Granicz & Cisternino (2007:2)
- ^ a b Cite error: The named reference
historyMSRwas invoked but never defined (see the help page). - ^ a b Syme, Don (2006). "Leveraging .NET Meta-programming Components from F#".
[F#] is rooted in the Core ML design, and in particular has a core language largely compatible with that of OCaml
- ^ for async
- ^ The F# Software Foundation. "Using F# for Web Applications". Retrieved 2020-07-30.
- ^ The F# Software Foundation. "Using F# for GPU Programming". Archived from the original on 2019-12-25. Retrieved 2019-12-25.
- ^ The F# Software Foundation. "The F# Software Foundation". Retrieved 2012-11-24.
- ^ The F# Software Foundation. "F# Compiler (open source edition) @ github". Archived from the original on 2013-05-17. Retrieved 2012-11-24.
- ^ "Develop with Visual F# in Visual Studio". Retrieved 2020-07-30.
- ^ "F#". Retrieved 2020-07-30.