ぶれいすさん
(F#レベルでの)*1型に紐づくのがメソッド。 型ではなくmodule、関数、値などに紐づくのが関数。*2 どちらかでしかできないこと メソッドだけ 可変長引数 オプショナル引数 名前付き引数 オーバーロード 無条件での前方参照(再帰メソッドでもrecが要らない) m…
この記事はF# Advent Calendar 2014 - connpassの23日目の記事です。 (日にち変更していただきました。ありがとうございます。)昨日はむろほしりょうたさんの初心者がF#をUnityで使ってみた! - Qiitaでした。F# のネタリスト - 2つのアンコールより、 「ope…
「match式だけがパターンマッチだと思うなよ」 - memo.txt本当はこの記事に入るといいねって言われていたアクティブパターンについて。アクティブ パターン (F#) アクティブ パターンでは、入力データを分割する名前付きパーティションを定義できます。これ…
お昼休みに正規表現の練習させてもらいました。 ※コードはすべてF#です。「XPathを扱ってみましょう。」 準備 open System.Text.RegularExpressions let matches input pattern = seq { for x in Regex.Matches(input, pattern) -> x} let values input patt…
この記事は 初めてのアドベントカレンダー F# Advent Calendar 2013 - connpass 12日目の記事です。 昨日は @k_dispose さんの「F# - SqlEntityConnectionTypeProviderについて - Qiita [キータ]」でした。 明日は id:kyon_mm さんの「F#のなんかすごい話」…
リフレクションとは 動的(実行時)に、型の情報/メソッドの情報などを取得する。 取得した情報を元に、インスタンスの生成/メソッドの呼び出し行う。 動的に型の生成・書き換え/メソッドの生成・書き換え(もするらしい)。 どういう時に使うのでしょう 文字列…
新しい型を作るための仕組み なぜクラスを作るのか? 新しい型を作りたい わかりやすい まちがいにくい 「なんでも用意された型で書くのではなく、より適切な型を作りましょう。」 より適切な型を作る 制限することによって得られる力 組み合わせることによ…