関数型言語に必ずくっついてるこれ
いらんでしょ?匿名クラスで充分でしょ
探検
クロージャって何がいいの? [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2014/11/08(土) 13:11:47.84ID:6V2MLUHb2014/11/08(土) 13:17:58.06ID:rszc5DFq
マジレスすると、クロージャーよりも
関数内関数の方がいい。
クロージャーは変数スコープが不必要に広い。
多くの場合、クロージャーの外は見える必要がない。
逆に見えてしまうと不用意に変数を書き換えてしまう。
関数内関数がない言語が多いから
仕方なくクロージャーを使うしかないが、
Java8のラムダの方がまだ安全なコードを書くことが出来る。
(ラムダも外のスコープが参照できる場合があるので完璧ではない)
つまり俺がいいたいのは、クロージャーを使うと苦労するのジャー。
関数内関数の方がいい。
クロージャーは変数スコープが不必要に広い。
多くの場合、クロージャーの外は見える必要がない。
逆に見えてしまうと不用意に変数を書き換えてしまう。
関数内関数がない言語が多いから
仕方なくクロージャーを使うしかないが、
Java8のラムダの方がまだ安全なコードを書くことが出来る。
(ラムダも外のスコープが参照できる場合があるので完璧ではない)
つまり俺がいいたいのは、クロージャーを使うと苦労するのジャー。
2014/11/08(土) 13:42:47.14ID:alIlcZLx
ディスクロージャ
2014/11/08(土) 14:33:50.79ID:Wb7Sa5AG
>>1
関数型言語の操作的意味論において、クロージャとは:
「ラムダ式と局所環境とを組合せた概念」
を指す
このクロージャを具象構文で表したものが一般的な「ラムダ式」であり、
クロージャを識別子に束縛したものが一般的な「関数宣言」である
Standard ML という関数型言語だと、
たとえばラムダ式は fn x => x + 1 であり、関数宣言は val succ = fn x => x + 1 である
ここで、関数宣言には fun succ x = x + 1 と簡潔に書ける構文糖を用いるのが一般的
だから、あらゆる関数型言語ないし関数型プログラミングが可能なあらゆる言語であれば、
クロージャ(という概念)は必要不可欠に存在である、と言える
また Java の「匿名クラス」もクロージャ(という概念)を応用した具象構文の一種である
で、Java 8 で導入された「ラムダ式」もクロージャの具象構文だけど、
匿名クラスよりも簡潔に書ける利点があるから、多くのケースで広く利用されるようになるだろう
両者の間には、局所環境と組み合わせる対象が「匿名クラス」ではクラスという単位であるのに対して、
「ラムダ式」では式という(クラスよりも粒の小さな)単位であるという違いがある
目的に応じて適切に両者を使い分けることが望ましい
関数型言語の操作的意味論において、クロージャとは:
「ラムダ式と局所環境とを組合せた概念」
を指す
このクロージャを具象構文で表したものが一般的な「ラムダ式」であり、
クロージャを識別子に束縛したものが一般的な「関数宣言」である
Standard ML という関数型言語だと、
たとえばラムダ式は fn x => x + 1 であり、関数宣言は val succ = fn x => x + 1 である
ここで、関数宣言には fun succ x = x + 1 と簡潔に書ける構文糖を用いるのが一般的
だから、あらゆる関数型言語ないし関数型プログラミングが可能なあらゆる言語であれば、
クロージャ(という概念)は必要不可欠に存在である、と言える
また Java の「匿名クラス」もクロージャ(という概念)を応用した具象構文の一種である
で、Java 8 で導入された「ラムダ式」もクロージャの具象構文だけど、
匿名クラスよりも簡潔に書ける利点があるから、多くのケースで広く利用されるようになるだろう
両者の間には、局所環境と組み合わせる対象が「匿名クラス」ではクラスという単位であるのに対して、
「ラムダ式」では式という(クラスよりも粒の小さな)単位であるという違いがある
目的に応じて適切に両者を使い分けることが望ましい
2014/11/08(土) 16:17:08.12ID:gNjtEENQ
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\
∠ ノ
丶 |
ノ |
| / ̄ ̄ ̄ ̄\ |
| / ヽ |
| | | |
| | | |
| | | |
/ | | /
ヽ \_/| |\_/ ヽヘ
| / \ /
 ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄
パンとか止めるやつ
∠ ノ
丶 |
ノ |
| / ̄ ̄ ̄ ̄\ |
| / ヽ |
| | | |
| | | |
| | | |
/ | | /
ヽ \_/| |\_/ ヽヘ
| / \ /
 ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄
パンとか止めるやつ
6デフォルトの名無しさん
2014/11/08(土) 16:19:08.12ID:gwropNof >>5
それ、パンとか止めるやつだろ!
それ、パンとか止めるやつだろ!
2014/11/08(土) 16:28:06.78ID:Z0nNiFel
/ ̄ ̄\
/ _ノ ヽ、_ \
. | ( ●)(● ) |
,-,-,-,__ | (__人__) │rヽヽヽヽ__ 「クイックロック バッグ クロージャー!!」
r.l .' ' .'.r_l | `⌒ ´ . | ´l .|/
.ヽ| | | | | /_
._,,-ーヽ /-‐ ヽ /‐''",' /. `ヽ
/ /`''‐-',. ヽ ./ rj,.-‐''´`l ./
\ | 二ヽ ヽ三 |ー‐'´
`''‐ヽ ―`ヘ j `―r'´
`T ´ j. ./ j
ヽ .ヽ、 ___ / ,'
| ./(>)^ ヽ\ i
| ./ (_ (<) \ .i
/ .! ./ /rェヾ__)⌒::: ヾ.\
/ ∧i. `⌒´-'´ u; ノ ヽ
| .\ヽ 、 , / |
.ヽ ',. ー 一 ./ /
', .', ./ /
.', ', / /
/ヽ、 \ / /
/ | ヽ―‐/ ./ \
./ .l 丿 ゝ ( ヽ
/ / / \ ', ',
/ /-‐''´ `''‐| ',
./ __| . / .',
| `ヽ、 ./ ̄ .|
| ヽ / /
`"''-,,__ ,,,,丿 ゝ、__,,-''
/ _ノ ヽ、_ \
. | ( ●)(● ) |
,-,-,-,__ | (__人__) │rヽヽヽヽ__ 「クイックロック バッグ クロージャー!!」
r.l .' ' .'.r_l | `⌒ ´ . | ´l .|/
.ヽ| | | | | /_
._,,-ーヽ /-‐ ヽ /‐''",' /. `ヽ
/ /`''‐-',. ヽ ./ rj,.-‐''´`l ./
\ | 二ヽ ヽ三 |ー‐'´
`''‐ヽ ―`ヘ j `―r'´
`T ´ j. ./ j
ヽ .ヽ、 ___ / ,'
| ./(>)^ ヽ\ i
| ./ (_ (<) \ .i
/ .! ./ /rェヾ__)⌒::: ヾ.\
/ ∧i. `⌒´-'´ u; ノ ヽ
| .\ヽ 、 , / |
.ヽ ',. ー 一 ./ /
', .', ./ /
.', ', / /
/ヽ、 \ / /
/ | ヽ―‐/ ./ \
./ .l 丿 ゝ ( ヽ
/ / / \ ', ',
/ /-‐''´ `''‐| ',
./ __| . / .',
| `ヽ、 ./ ̄ .|
| ヽ / /
`"''-,,__ ,,,,丿 ゝ、__,,-''
8デフォルトの名無しさん
2014/11/08(土) 18:29:54.75ID:+pW0VlFs■ このスレッドは過去ログ倉庫に格納されています
ニュース
- こども家庭庁、2026年から“独身税”を開始、年収200万なら年4200円、年収400万なら年7800円 ★3 [お断り★]
- 山里亮太、フィリピンに子ども食堂を建設 「偽善者」「日本の子どもを助けるべき」の声があっても活動を続ける理由 [Anonymous★]
- 【BBC】サッカー 滋賀県初!レイラック滋賀 悲願のJ3昇格決定 [鉄チーズ烏★]
- 【福岡】福岡市のドーム近くで成人女性が刺されたか 60代とみられる男が逃走中 [ぐれ★]
- B’z東京ドーム公演で後ろの客が大熱唱…「B’zの歌声に集中できない」注意すると笑いながら反論されモヤモヤ [muffin★]
- HKT48の関連イベントでスタッフが刺される、命に別条なし メンバーは全員無事 福岡 [少考さん★]
- 【実況】博衣こよりのえちえちドラクエ1&2リメイク🧪★9
- 【実況】博衣こよりのえちえちドラクエ1&2リメイク🧪★8
- 日本人の米離れが深刻化 日本人よ麦じゃ麦を食うんじゃ オートミール、大麦、どっちも米より栄養あるぞ [402859164]
- 【高市朗報】自民党のヒゲ「レーダー照射で日本にもまだ逆転できるカードがあります。中国軍との通信の音声です」 [931948549]
- 有識者「外国人より40-50代の日本人おっさんの方が遥かに態度悪い、マジで害悪」8万いいね [177316839]
- デフレ、円高👈こいつが叩かれた理由 [943688309]
