mitsuchi/mud

関数定義のブロック内でのローカル関数定義

Opened this issue · 1 comments

fun hoge : Int -> Int -> Int = {
    fun fuga : Int -> Int -> Int = ~~定義~~
    1 1 -> 1
    1 x -> fuga 1 x
    fun piyo : Int -> Int -> Int = ~~定義~~
    x  y -> fuga x y + piyo x y  
}

みたいなローカル関数の定義はどうですか?
(現在は fun hoge = { x y -> { fun fuga = a b -> ~~定義~~; fuga x y } })

いいと思います! 現在でも以下のようにも書くことはできますが、

fun hoge = x y -> {
    fun fuga = a b -> a  + b
    fuga x y
}

そうじゃなくてパターンマッチを生かしたままでも関数定義が書けるようにということですよね。
いいですね。