【激突】関数型言語 VS オブジェクト指向言語2at TECH【激突】関数型言語 VS オブジェクト指向言語2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト414:デフォルトの名無しさん 12/04/15 15:35:03.47 >>411 三つ目が>>385だね(カリー化されてれば) それとも見た目だけの問題? 415:デフォルトの名無しさん 12/04/15 16:42:00.03 F#でThreadLocal等の副作用もないバージョン。 type MainBuilder() = member this.Return x = x |> List.map (function | _, Some names -> box names | number, None -> box number) let main = MainBuilder() let makeFizzBuzz name condition (x : obj) = match x with | :? int as number -> number, if condition number then Some name else None | _ -> let number, names = x :?> int * string option number, if condition number then (defaultArg names "") + name |> Some else names // fizz, buzz, gizzの定義は>>341と同じなので省略 > main { return [1; 3; 5; 7; 15; 21; 35; 105] |> List.map (fun x -> gizz(buzz(fizz x))) };; val it : obj list = [1; "Fizz"; "Buzz"; "Gizz"; "FizzBuzz"; "FizzGizz"; "BuzzGizz"; "FizzBuzzGizz"] 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch