[#60404] is RB_GC_GUARD needed in rb_io_syswrite? — Eric Wong <normalperson@...>
I haven't gotten it to crash as-is, but it seems like we need to
4 messages
2014/02/01
[#60682] volatile usages — Eric Wong <normalperson@...>
Hi all, I went ahead and removed some use of volatile which were once
5 messages
2014/02/13
[#60794] [RFC] rearrange+pack vtm and time_object structs — Eric Wong <normalperson@...>
Extracted from addendum on top of Feature #9362 (cache-aligned objects).
4 messages
2014/02/16
[#61139] [ruby-trunk - Feature #9577] [Open] [PATCH] benchmark/driver.rb: align columns in text output — normalperson@...
Issue #9577 has been reported by Eric Wong.
3 messages
2014/02/28
[ruby-core:61037] [ruby-trunk - Feature #7939] [Feedback] Alternative curry function creation
From:
matz@...
Date:
2014-02-24 02:18:05 UTC
List:
ruby-core #61037
Issue #7939 has been updated by Yukihiro Matsumoto.
Status changed from Assigned to Feedback
We are not going to change the behavior of 'curry' with respect to the mathematical term currying, which origin is the famous mathematician Haskel Curry.
But we don't reject your opinion that proposed API is intuitive. All we say is that we need new name.
Matz.
----------------------------------------
Feature #7939: Alternative curry function creation
https://bugs.ruby-lang.org/issues/7939#change-45441
* Author: Kresimir Bojcic
* Status: Feedback
* Priority: Normal
* Assignee: Yukihiro Matsumoto
* Category: core
* Target version: next minor
----------------------------------------
=begin
I really like the new "(({assuming}))" method used for currying in Perl 6.
For example if I loose my mind and implement ((%fizzbuzz%)) via currying I can do it like this:
fb = ->(modulo_number, message, x) { message if x % modulo_number == 0 }
fizzbuzz = fb.curry[15,"FizzBuzz"]
fizz = fb.curry[3, "Fizz"]
buzz = fb.curry[5, "Buzz"]
(1..100).each { |i| puts fizzbuzz[i] || fizz[i] || buzz[i] || i }
Here the first hurdle is that curry is somewhat mathematical, and the secons is that you need to use (({[]})) for function invoking...
If we had something similar to this:
class Proc
def assuming(*args)
curry.call *args
end
end
It could be written more naturally IMO:
fb = ->(modulo_number, message, x) { message if x % modulo_number == 0 }
fizzbuzz = fb.assuming(15,"FizzBuzz")
buzz = fb.assuming(5, "Buzz")
fizz = fb.assuming(3,"Fizz")
(1..100).each { |i| puts fizzbuzz[i] || fizz[i] || buzz[i] || i }
=end
--
http://bugs.ruby-lang.org/