Haskell入門_1-1-1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[Program]] > [[Haskell]] > [[Haskell入門]] > 第1章 は...
RIGHT:2022-01-18 (火) 公開
//RIGHT:2022-01-18 (火) 更新
#html{{
<div class="alert alert-info">学習メモ</div>
<table border="0" cellpadding="5"><tr><td valign="top"><a...
}}
#contents
//----------------------------------------
* 1.1.1 関数型プログラミング言語 [#he90c35c]
「関数」(function)について、今一度よく考えてみると、関...
** 関数型プログラミングの定義 [#l5e6757b]
- 「数学的な関数」は、引数に対して値が決まる。
- 数学的な関数で計算を表現するのが、関数型プログラミング。
** 参照透過性 [#referential-transparency]
関数に与えた引数が同じなら、必ず結果の値も同じになること...
(参考)参照透過性 - Wikipedia https://w.wiki/4hfs
f(x) = x + 1
という関数があった場合、引数xに1を与えたら、結果の値f(1)...
100回計算しても、100回中100回ともf(1)の値は2になります。
f(1)が2になることが保証されており、2以外の値にはならない...
これがもし計算するたびに結果が違って、あるときはf(1)が10...
「数学的な関数」とは、参照透過性がある関数のことです。
** 式(expression) [#i112ac64]
式とは、数学的な関数を組み合わせて作ったものです。
関数型プログラミングでは、この数学的な関数を組み合わせて...
*** 式と文の違い [#k4cc74c8]
プログラミングには、「式」(expression)と「文」(stateme...
式と文の違いは、[[2.1.1 手続き型言語と関数型言語>Haskell...
両者の違いを一言で言えば、型の有無です。
- 式は型を持つ。
- 文には型がない。
** 評価(evaluation) [#p7956da0]
関数に引数を与えて、関数の値を得ることを「評価」という言...
f(x) = x + 1
という関数があった場合、引数xに1を与えて、f(1)を評価する...
手続き型の言語では、
「関数を実行する」
「関数を呼び出す」
という言い方をします。
関数型の言語では、
「式を評価する」
という言い方をします。
* まとめ [#c98984e3]
関数型プログラミングの特徴は、「数学的な関数」を組み合わ...
手続き型でできることは、関数型でもできるようになっていま...
(参考)構造化プログラミング - Wikipedia https://w.wiki/3...
| 手続き型プログラミング言語 | 関数型プログラミング言語 |h
| 順次(sequence) | 合成 |
| 選択(selection) | パターンマッチ |
| 反復(repetition) | 再帰 |
終了行:
[[Program]] > [[Haskell]] > [[Haskell入門]] > 第1章 は...
RIGHT:2022-01-18 (火) 公開
//RIGHT:2022-01-18 (火) 更新
#html{{
<div class="alert alert-info">学習メモ</div>
<table border="0" cellpadding="5"><tr><td valign="top"><a...
}}
#contents
//----------------------------------------
* 1.1.1 関数型プログラミング言語 [#he90c35c]
「関数」(function)について、今一度よく考えてみると、関...
** 関数型プログラミングの定義 [#l5e6757b]
- 「数学的な関数」は、引数に対して値が決まる。
- 数学的な関数で計算を表現するのが、関数型プログラミング。
** 参照透過性 [#referential-transparency]
関数に与えた引数が同じなら、必ず結果の値も同じになること...
(参考)参照透過性 - Wikipedia https://w.wiki/4hfs
f(x) = x + 1
という関数があった場合、引数xに1を与えたら、結果の値f(1)...
100回計算しても、100回中100回ともf(1)の値は2になります。
f(1)が2になることが保証されており、2以外の値にはならない...
これがもし計算するたびに結果が違って、あるときはf(1)が10...
「数学的な関数」とは、参照透過性がある関数のことです。
** 式(expression) [#i112ac64]
式とは、数学的な関数を組み合わせて作ったものです。
関数型プログラミングでは、この数学的な関数を組み合わせて...
*** 式と文の違い [#k4cc74c8]
プログラミングには、「式」(expression)と「文」(stateme...
式と文の違いは、[[2.1.1 手続き型言語と関数型言語>Haskell...
両者の違いを一言で言えば、型の有無です。
- 式は型を持つ。
- 文には型がない。
** 評価(evaluation) [#p7956da0]
関数に引数を与えて、関数の値を得ることを「評価」という言...
f(x) = x + 1
という関数があった場合、引数xに1を与えて、f(1)を評価する...
手続き型の言語では、
「関数を実行する」
「関数を呼び出す」
という言い方をします。
関数型の言語では、
「式を評価する」
という言い方をします。
* まとめ [#c98984e3]
関数型プログラミングの特徴は、「数学的な関数」を組み合わ...
手続き型でできることは、関数型でもできるようになっていま...
(参考)構造化プログラミング - Wikipedia https://w.wiki/3...
| 手続き型プログラミング言語 | 関数型プログラミング言語 |h
| 順次(sequence) | 合成 |
| 選択(selection) | パターンマッチ |
| 反復(repetition) | 再帰 |
ページ名: