FSharp やってみた
良い感じのブラウザだと Try F# で式を評価できるらしいんだけど、できないブラウザだったので、処理系をインストールして式を評価してみるよ。
インストール
yaourt で fsharp をインストールできるよ。
% yaourt -S fsharp
REPL 起動
REPL を起動する時は fsharpi って打ってね:
% fsharpi
れっと
let
を使って変数?を定義?することができるよ:
> let lucky = 3 + 4;; val lucky : int = 7
あと、式の最後には ;;
(セミコロン 2 つ)を付けてね。
前に定義してた変数?も参照できるよ:
> let unucky = lucky + 6;; val unucky : int = 13
とりあえず変数?を定義?して
別の値を設定することもできるよ。
シャドウイングってやつ?
> let duplicated = "original value";; val duplicated : string = "original value" > let duplicated = "new value";; val duplicated : string = "new value"
れっと☆みゅーたぶる
let
した変数?は二度と変更することができないよ。
どうしても変更したい変数?を使う時は let mutable
で定義?するといいみたい:
> let mutable modifiable = "original value";; val mutable modifiable : string = "original value" > modifiable <- "new value";; val it : unit = () > modifiable;; val it : string = "new value"
「代入」する場合は <-
(左向き矢印)を使うみたい。
型
型推論されて int
とか float
とか string
になってるー!!! というやつ。
> let anInt = 10;; val anInt : int = 10 > let aFloat = 20.0;; val aFloat : float = 20.0 > let aString = "I'm a string!";; val aString : string = "I'm a string!"
出力
へろーわーるどするときは printfn
を使うよ:
> printfn "Hello, World from F# REPL!!";; Hello, World from F# REPL!! val it : unit = ()
printf
みたいに書式をあれしてこれできる:
> printfn "The answer is %d" 42;; The answer is 42 val it : unit = ()
Lisp でいうと:
(printfn "The answer is %d" 42) ;; | The answer is 42 ;; => nil
(๑´ڡ`๑) おしまい