SG

2011-12-01から1ヶ月間の記事一覧

F# 3.0 の Query expressions

F#

この記事は F# Advent Calendar 2011 の13回目です。 ←前回 [twitter:@furuya02] さん「F#によるパケットモニタの作成(WinPcap)」 →次回 [twitter:@jsakamoto] さん 「F# で正規表現デザイナ ASP.NET MVC アプリを作成する」 はじめに 今年の Advent Calenda…

F# で LINQ 入門 Distinct

F#

入門と銘打ってますが、入門しているのはわたしです。Distinct メソッドでは、シーケンス内から重複した要素を取り除いたシーケンスを取得します。 open System.Linq let cart = [ "TaPL", 6119; "SICP", 4830; "TaPL", 6220; "SICP", 4830; "TaPL", 6119;] …

F# で LINQ 入門 Where

F#

Where はシーケンスに対し抽出を行います。LINQ の中では最も使用されるメソッドの1つではないでしょうか。 open System.Linq (* 年齢不詳の人物もいるため Option *) type person = { name : string; age : Option<int> } (* 公式より抜粋 http://www.guilty-cro</int>…

F# で LINQ 入門 Single SingleOrDefault

F#

職場でシングルベルを迎えそうなSGです。わたし、ひとりぼっち…… open System.Linq let puellaMagi = ["Mami"] puellaMagi.Single() |> printfn "%s" let newPuellaMagi = "Madoka" :: puellaMagi (* ひとりぼっちじゃないのでエラー newPuellaMagi.Single()…

F# で LINQ 入門 First FirstOrDefault Last LastOrDefault

F#

始まりは肝心ですし終わりが良くなければ失敗だと思います。SGです。インデクサに 0 や hogeList.Count - 1 なんて書いていませんか? 書いてますね、わたしです。 open System.Linq let firstKiss (taste : string[]) = taste.First() |> printfn "初めての…

F# で LINQ 入門 ElementAt ElementAtOrDefault

F#

なかなか .NET Framework 2.0 を抜け出せないまま、LINQ なんて使わないし覚えなくていいや……と思っていたらいつの間にか .NET Framework も 4.5 がリリースされようとしているではありませんか。最近はテストメソッドで LINQ を嗜んでいますが、相変わらず…