From: Aaron Patterson Date: 2011-01-26T16:08:52+09:00 Subject: [ruby-core:34861] [Ruby 1.9-Feature#4326][Open] Fiber should respond to call() and [] --mimepart_4d3fc8827b1cd_1dc2b1c820618426 Content-Type: text/plain Content-Transfer-Encoding: Quoted-printable Content-Disposition: inline Feature #4326: Fiber should respond to call() and [] http://redmine.ruby-lang.org/issues/show/4326 Author: Aaron Patterson Status: Open, Priority: Normal Assigned to: Koichi Sasada Fibers are considered to be coroutines. Knuth says "Subroutines are spec= ial cases of ... coroutines". This makes sense to me. Method, Proc, and lambda respond to `call` and `[]`. If Fiber also respo= nded to `call` and `[]`, we could use coroutines in places where we use l= ambdas, procs, and methods. I've attached a patch that implements the two methods. ---------------------------------------- http://redmine.ruby-lang.org --mimepart_4d3fc8827b1cd_1dc2b1c820618426 Content-Type: text/plain; name=fiber.patch Content-Transfer-Encoding: Base64 Content-Disposition: attachment; filename=fiber.patch ZGlmZiAtLWdpdCBhL2NvbnQuYyBiL2NvbnQuYwppbmRleCBhZDI3N2JkLi5l MzA5ZTAwIDEwMDY0NAotLS0gYS9jb250LmMKKysrIGIvY29udC5jCkBAIC0x NDM4LDYgKzE0MzgsOCBAQCBJbml0X0NvbnQodm9pZCkKICAgICByYl9kZWZp bmVfc2luZ2xldG9uX21ldGhvZChyYl9jRmliZXIsICJ5aWVsZCIsIHJiX2Zp YmVyX3NfeWllbGQsIC0xKTsKICAgICByYl9kZWZpbmVfbWV0aG9kKHJiX2NG aWJlciwgImluaXRpYWxpemUiLCByYl9maWJlcl9pbml0LCAwKTsKICAgICBy Yl9kZWZpbmVfbWV0aG9kKHJiX2NGaWJlciwgInJlc3VtZSIsIHJiX2ZpYmVy X21fcmVzdW1lLCAtMSk7CisgICAgcmJfZGVmaW5lX21ldGhvZChyYl9jRmli ZXIsICJjYWxsIiwgcmJfZmliZXJfbV9yZXN1bWUsIC0xKTsKKyAgICByYl9k ZWZpbmVfbWV0aG9kKHJiX2NGaWJlciwgIltdIiwgcmJfZmliZXJfbV9yZXN1 bWUsIC0xKTsKIH0KIAogI2lmIGRlZmluZWQgX19HTlVDX18gJiYgX19HTlVD X18gPj0gNApkaWZmIC0tZ2l0IGEvdGVzdC9ydWJ5L3Rlc3RfZmliZXIucmIg Yi90ZXN0L3J1YnkvdGVzdF9maWJlci5yYgppbmRleCBlYzY0Zjk4Li5iM2E0 MmU1IDEwMDY0NAotLS0gYS90ZXN0L3J1YnkvdGVzdF9maWJlci5yYgorKysg Yi90ZXN0L3J1YnkvdGVzdF9maWJlci5yYgpAQCAtNCw2ICs0LDE0IEBAIHJl cXVpcmUgJ2NvbnRpbnVhdGlvbicKIHJlcXVpcmVfcmVsYXRpdmUgJy4vZW52 dXRpbCcKIAogY2xhc3MgVGVzdEZpYmVyIDwgVGVzdDo6VW5pdDo6VGVzdENh c2UKKyAgZGVmIHRlc3RfY2FsbAorICAgIEZpYmVyLm5ldyB7IHxlfCBhc3Nl cnRfZXF1YWwoOm9rMSwgZSkgfS5jYWxsKDpvazEpCisgIGVuZAorCisgIGRl ZiB0ZXN0X2JyYWNrZXRzCisgICAgRmliZXIubmV3IHsgfGV8IGFzc2VydF9l cXVhbCg6b2sxLCBlKSB9WzpvazFdCisgIGVuZAorCiAgIGRlZiB0ZXN0X25v cm1hbAogICAgIGYgPSBGaWJlci5jdXJyZW50CiAgICAgYXNzZXJ0X2VxdWFs KDpvazIsCg== --mimepart_4d3fc8827b1cd_1dc2b1c820618426--