> For the complete documentation index, see [llms.txt](https://kurohasu.gitbook.io/fsharpabout/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kurohasu.gitbook.io/fsharpabout/compute/chi-yan-shi.md).

# 遅延式

### 遅延式とは？

遅延式はその名の通りバインド時にすぐ評価するのではなく、結果が必要になった時に式を評価します

```
構文:let <名前>=lazy{遅延式}
```

遅延式を使用することで結果が必要な場合のみ計算を行うためパフォーマンスの向上に繋がります\
遅延式を計算する場合、Forceメソッドを使用すると計算が行われます\
(値の場合Valueメソッドの使用も可能です)

```fsharp
//例:引数+2する遅延式をForceメソッドを使用して取得する
let cal1(x)=lazy(x+2)
let back1=cal1(3)
printfn "back1=%d" back1.Force    //出力結果:back1=5


//例:引数*9する遅延式をValueメソッドを使用して取得する
let cal2(y)=lazy(y*9)
let back2=cal2(3)
printfn "back2=%d" back2.Value    //出力結果:back2=27
```
