追加機能続々公開!!!Perl6の全貌に迫る!?#yapcasia #yapcasiaA
Jonathanさん: しかし…: 同時に実行するタスク数はいくつにしたらよいか? 効率的に完了を待ち、結果を得るには? 例外などクラッシュをどう処理するか? #yapcasia #yapcasiaA
2015-08-22 14:31:03Jonathanさん: Promiseを使う。タスク数などの管理はスケジューラにまかせる。 #yapcasia #yapcasiaA
2015-08-22 14:31:47PerlにPromiseが?! #yapcasia #yapcasiaA pic.twitter.com/rqdo0O4JI5
2015-08-22 14:32:37Perl 6 では "start" / "await" で Promise が使えるっぽい #yapcasia #yapcasiaA
2015-08-22 14:32:37start => await でタスクを並列処理しよう。 #yapcasia #yapcasiaA
2015-08-22 14:33:05#yapcasia #yapcasiaA Parallerism > クロック向上は物理限界に達しているのでマルチコアによる parallerism > 正しくかつ効率的に完了をどう待てばいいか? > Perl6 では Promise(start/await)を使う 例外は再送出
2015-08-22 14:33:06発表の内容とは直接関係はないけど、ほんとに聞き取りやすい英語だな…声が良いのと合わさって教材のようだw ヒアリング弱としてはとても助かる。 #yapcasia #yapcasiaA
2015-08-22 14:34:07ウッ、やばい、Perl6アロー関数みたいなのもあるし、なんか書いてみてもいいかもって思えてくる。 #yapcasia #yapcasiaA
2015-08-22 14:35:07Pipeline operator!! #yapcasia #yapcasiaA pic.twitter.com/Cdt7OqKEGm
2015-08-22 14:36:02Jonathanさん: 複数ファイルから最大値を求める問題の例: パイプラインをまず構築。この時点では評価はまだ行わない。値が必要になってから実行すればいい #yapcasia #yapcasiaA
2015-08-22 14:36:30We use race to switch on parallel processing of the pipeline !!! #yapcasia #yapcasiaA dir($data-dir).race(batch => xx)
2015-08-22 14:37:46Jonathanさん: パイプラインをファイル数だけ並列に実行したい。Perl6では .race(batch => 10)とすると10個ずつに対してひとつスレッドが作成される #yapcasia #yapcasiaA
2015-08-22 14:37:47#yapcasia #yapcasiaA Perl6 では map や grep のような結果を scalar に保存して pipeline を組める > data parallerism したい > .race(batch => N, degree => M)
2015-08-22 14:38:21