[過去ログ] PowerShell -Part 3 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
158(2): 2018/11/01(木)21:15 ID:PBz6MbCm(2/3) AAS
Ruby では、Enumerator::Lazy で、無限リストを遅延処理できる
(1..Float::INFINITY).lazy.map{ |n| n*2 }.first(5)
# => [2, 4, 6, 8, 10]
これをLazyなしだと、先に無限配列を実体化しようとして、フリーズする
(1..Float::INFINITY).map{ |n| n*2 }.first(5)
# => (実行が終わらない...)
159: 2018/11/01(木)22:34 ID:j6Caq374(1/3) AAS
>>158
Rubyの場合も、PowerShellのように、複数のモジュール(PowerShellの場合だとCmdletやスクリプト)をつなげば連動して遅延実行してくれるのでしょうか。
Rubyの方が遅延実行は先駆ということは書かれていたけど。
使うことはないけれども知識として。
161: 158 2018/11/01(木)23:09 ID:PBz6MbCm(3/3) AAS
Ruby では、内部イテレータのEnumerable と、外部イテレータのEnumerator がある
Enumeratorをメソッドチェーンしている間は、リストが実体化されないから、
Enumeratorで続けていって、最後に実体化する
内部イテレータは、イテレータ自身が繰り返し制御を行う。
一方、外部イテレータは、ユーザーが繰り返し制御を行う
外部イテレータでは、2つの配列を1つずつ進めたり、カスタマイズできる
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.037s