28 lines
921 B
Markdown
28 lines
921 B
Markdown
---
|
||
title: F#
|
||
---
|
||
|
||
## F#
|
||
|
||
F# is a strongly typed language that inherit from the object oriented language (C#) but encourage a functional programmation. It runs on the .NET CLR, and can seamlessly inter-operate with C#.
|
||
It is compatible with visual studio and is officialy supported by Microsoft.
|
||
|
||
#### Immutability
|
||
|
||
Variables in F# are by default immutable. That means that their values can't be changed after initialization. Mutability can be forced by the keyword "mut". One of the F# best practices is to just make a copy of the variable you want and change the values you need at the initialization of the newly created variable
|
||
|
||
#### Records
|
||
|
||
F# can use objects but it is encouraged to use instead Records. Records are a set of members, and can be seens as structs for people that comes from a C background.
|
||
|
||
For example :
|
||
|
||
<code>
|
||
type People = {
|
||
Age: int
|
||
FirstName: string
|
||
LastName: string
|
||
}
|
||
</code>
|
||
|