スタートガイド
はじめに
本の内容
「F# を使う理由」を1ページで解説
F# のインストールと使い方
60 秒でわかる F# シンタックス
F# を学ぶ
F# のトラブルシューティング
仕事で F# を使う低リスクな方法
仕事で F# を使う 26 の低リスクな方法
開発と Devops スクリプトに F# を使う
テストに F# を使う
データベース関連タスクに F# を使う
仕事で F# を使うその他の興味深い方法
F# を使う理由
「F# を使う理由」シリーズ
F# を使う理由シリーズの紹介
60 秒でわかる F# シンタックス
C# と F# の比較: 簡単な合計
C# と F# の比較: ソート
C# と F# の比較: Webページのダウンロード
F# の 4 つの重要概念
簡潔さ
型推論
低オーバーヘッドの型定義
ボイラープレートコードを抽出するための関数を使う
ビルディングブロックとしての関数を使う
簡潔さのためのパターンマッチング
便利さ
型に関する既定のふるまい
インターフェースとしての関数
部分適用
アクティブパターン
正確性
不変性
網羅的なパターンマッチング
型システムを使用した正しいコードの確保
実践例: 正確性のための設計
並行処理
非同期プログラミング
メッセージとエージェント
関数型リアクティブプログラミング
完全性
シームレスな .NET ライブラリとの相互運用
C# でできることは何でも...
F# を使う理由: 結論
関数型思考
「関数型思考」 シリーズ
関数型思考: はじめに
数学関数
関数値と単純値
型と関数のしくみ
カリー化
部分適用
関数の結合性と合成
関数の定義
関数シグネチャ
関数の整理
型への関数のアタッチ
実践例: スタックベースの電卓
F# を理解する
「式と構文」 シリーズ
式と構文: はじめに
式 vs. 文
F# 式の概要
let、use、doでの束縛
F# 構文: インデントと冗長性
パラメーターと値の名前付け規則
制御フロー式
例外
マッチ式
printf によるフォーマット済みテキスト
実践例: コマンドライン引数の解析
実践例: ローマ数字
「F# の型を理解する」 シリーズ
F# の型を理解する: はじめに
F# の型概要
型略称
タプル
レコード
判別共用体
オプション型
列挙型
組み込みの .NET 型
測定単位
型推論を理解する
コレクション関数の選択
「F# でのオブジェクト指向プログラミング」 シリーズ
F# でのオブジェクト指向プログラミング: はじめに
クラス
継承と抽象クラス
インターフェイス
オブジェクト式
「コンピュテーション式」 シリーズ
コンピュテーション式: はじめに
継続の理解
bind の紹介
コンピュテーション式とラッパー型
ラッパー型について
ビルダーの実装: Zero と Yield
ビルダーの実装: Combine
ビルダーの実装: Delay と Run
ビルダーの実装: オーバーロード
ビルダーの実装:遅延の追加
ビルダーの実装: 標準メソッドの残りの部分
プロジェクト内のモジュールの整理
「循環依存」 シリーズ
循環依存は悪
循環依存を取り除くリファクタリング
実世界の循環依存とモジュール性
「C# からの移植」 シリーズ
C# から F# への移植: はじめに
直接移植の始め方
関数型設計
「型を使って設計する」 シリーズ
型を使って設計する: はじめに
単一ケース共用体型
不正な状態を表現できないようにする
新しい概念を発見する
状態を明示的にする
制約付き文字列
文字列以外の型
型を使って設計する: 結論
代数的型のサイズとドメインモデリング
タートルを見る13の方法
タートルを見る13の方法 (パート2)
タートルを見る13の方法 - 追補
関数型パターン
完全なプログラムの設計とコーディング方法
エラー処理への関数型アプローチ (鉄道指向プログラミング)
鉄道指向プログラミング: 炭酸化バージョン
「モノイドを理解する」 シリーズ
つらくないモノイド
実践的なモノイド
モノイド以外を扱う
「パーサーコンビネータを理解する」 シリーズ
パーサーコンビネータを理解する
便利なパーサーコンビネータの作成
パーサーライブラリの改善
JSONパーサーをゼロから書く
「状態の扱い」 シリーズ
フランケンファンクター博士とモナド怪物
モナド怪物の体を完成させる
モナド怪物のリファクタリング
「Map, Bind, Apply なにもわからない」 シリーズ
map と apply を理解する
bind を理解する
コア関数の実際的な使い方
traverse と sequence を理解する
map, apply, bind, sequence の実際的な使い方
Reader モナドの再発明
Map, Bind, Apply のまとめ
「再帰型と畳み込み」 シリーズ
再帰型入門
カタモーフィズムの例
畳み込みの紹介
畳み込みを理解する
ジェネリック再帰型
木構造の実践的な利用
「関数型アプローチによる認可」 シリーズ
関数型アプローチによる認可
IDとロールによるケイパビリティの制約
型をアクセストークンとして使う
テスト
プロパティベースのテスト入門
プロパティベースのテストのプロパティ選択
例とウォークスルー
実践例: 正しさのための設計
実践例: スタックベースの電卓
実践例: コマンドライン引数の解析
実践例: ローマ数字
「解説付きローマ数字カタ」の解説
「注釈付きウォークスルー」 シリーズ
電卓のウォークスルー: パート1
電卓のウォークスルー: パート2
電卓のウォークスルー: パート3
電卓のウォークスルー: パート4
エンタープライズ三目並べ
エンタープライズ三目並べ パート2
ゼロからJSONパーサーを書く
その他
静的型付け関数型プログラミング言語を使わない10の理由
なぜモナドチュートリアルを書かないのか
そのプログラミング言語は不合理ですか?
UML図?必要ねぇ!
内向的・外向的なプログラミング言語
型安全と高パフォーマンスをコンパイラディレクティブで切り替える
HonKitで公開
「C# からの移植」 シリーズ
C#のコードをF#に移植したいですか?この連載では、さまざまなアプローチと、それに伴う設計上の決定やトレードオフについて見ていきます。
C# から F# への移植:はじめに
。既存のC#コードをF#に移植する3つのアプローチ。
直接移植の始め方
。C#に相当するF#の表現。
results matching "
"
No results matching "
"