F#
https://upload.wikimedia.org/wikipedia/commons/5/57/Fsharp_logo.png
設計者 Don Syme
OCamlがベース
MicroSoftが開発した.NET Framework向けの言語
拡張子は.fs
コンピュテーション式
references
docs
Midoliy.com |> F#
@Midoliy氏のリファレンス。みやすい
http://fsharpintro.net/
Online実行環境
F#のdesign
https://github.com/fsharp/fslang-design
https://github.com/fsprojects/awesome-fsharp
fsharpi
インタプリタ
終了 #quit;;
install
ref
monoって何?なんでこれが必要?
ionideというVSCode Extensionを使う
Syntaxの特徴
==と=の区別がなく=のみ
Elixirと同じだmrsekut.icon
変数も関数もlet
pipeline operator
Elmの<|などと同じ。Haskellの$のように使える
code:fsharp
let a, b = 1, 2
let f x = x + 1
do
let c = a+b
printf "%d" <| f c
<>
!=とか\=の意味
OCaml的
参考
Haskellで学ぶF#入門 - Qiita
C#/JavaScriptで学ぶF#入門 - Qiita
F#の型
固定長リスト
https://7colou.red/blog/2020/fsharp-advent-2.html
型拡張
https://midoliy.com/content/fsharp/text/type-detail/8_type-extensions.html
v5の新機能
https://bleis-tift.hatenablog.com/entry/fsharp5
https://qiita.com/cannorin/items/1936faded610c3ab6c18
https://qiita.com/cannorin/items/59d79cc9a3b64c761cd4
http://p-tan.hatenablog.com/entry/2017/09/05/060934
Either的なChoice型
https://fsprojects.github.io/FSharpx.Extras/reference/fsharpx-choice.html
Reactが書ける
https://ja.reactjs.org/docs/static-type-checking.html#other-languages
https://fable.io/
https://elmish.github.io/react/
https://github.com/fable-compiler/fable-react
https://github.com/fable-compiler/Fable
歴史
https://fsharp.org/history/hopl-draft-1.pdf
https://qiita.com/cannorin/items/1936faded610c3ab6c18
vNext
type provider
篩型
https://www.microsoft.com/en-us/research/project/f7-refinement-types-for-f/?from=http%3A%2F%2Fresearch.microsoft.com%2Fen-us%2Fprojects%2Ff7%2F
https://qiita.com/vain0x/items/15ebf2fddde9036267b5
ブラックジャック
https://www.slideshare.net/bleistift/f-9062112?related=2
https://speakerdeck.com/cannorin/a-journey-to-type-safe-vectors-in-f-number-5f021f52-9e75-4901-a1c4-f423f2f5ed3f
#プログラミング言語