[#390749] Why are there so many similar/identical methods in core classes — Kassym Dorsel <k.dorsel@...>

Let's look at the Array class and start with method aliases.

14 messages 2011/12/02

[#390755] Inverse Operation of Module#include — Su Zhang <su.comp.lang.ruby@...>

Hi list,

21 messages 2011/12/02
[#390759] Re: Inverse Operation of Module#include — Ryan Davis <ryand-ruby@...> 2011/12/02

[#390764] Re: Inverse Operation of Module#include — Isaac Sanders <isaacbfsanders@...> 2011/12/02

I would suggest an Adapter pattern use here. IF there is something that has

[#390876] black magical hash element vivification — Chad Perrin <code@...>

Ruby (1.9.3p0 to be precise, installed with RVM) is not behaving as I

12 messages 2011/12/05

[#390918] WEB SURVEY about Ruby Community — Intransition <transfire@...>

Did any one else get this survey request?

14 messages 2011/12/07

[#390976] Confusing results from string multiplication — Rob Marshall <robmarshall@...>

Hi,

19 messages 2011/12/08

[#391019] How can I do h["foo"] += "bar" if h["foo"] does not exist? — "Andrew S." <andrewinfosec@...>

Hi there,

13 messages 2011/12/09

[#391027] reading from file without end-of-lines — Janko Muzykant <umrzykus@...>

hi,

20 messages 2011/12/09
[#391028] Re: reading from file without end-of-lines — Gavin Sinclair <gsinclair@...> 2011/12/09

> i'm trying to read a few text values from single file:

[#391031] Re: reading from file without end-of-lines — Robert Klemme <shortcutter@...> 2011/12/09

On Fri, Dec 9, 2011 at 9:58 AM, Gavin Sinclair <gsinclair@gmail.com> wrote:

[#391042] Re: reading from file without end-of-lines — Gavin Sinclair <gsinclair@...> 2011/12/09

On Fri, Dec 9, 2011 at 8:18 PM, Robert Klemme

[#391135] I need advice on what to do next. — Nathan Kossaeth <system_freak_2004@...>

I am new to programming. I read the ebook "Learn to Program" by Chris

23 messages 2011/12/12

[#391216] perf optimization using profile results — Chuck Remes <cremes.devlist@...>

I need some help with optimizing a set of libraries that I use. They are ffi-rzmq, zmqmachine and rzmq_brokers (all up on github).

13 messages 2011/12/13
[#391218] Re: perf optimization using profile results — Chuck Remes <cremes.devlist@...> 2011/12/13

On Dec 13, 2011, at 9:57 AM, Chuck Remes wrote:

[#391234] Re: perf optimization using profile results — Charles Oliver Nutter <headius@...> 2011/12/14

A couple quick observations.

[#391238] Re: perf optimization using profile results — Chuck Remes <cremes.devlist@...> 2011/12/14

On Dec 13, 2011, at 7:03 PM, Charles Oliver Nutter wrote:

[#391324] ruby 1.9 threading performance goes non-linear — Joel VanderWerf <joelvanderwerf@...>

12 messages 2011/12/16
[#391325] Re: ruby 1.9 threading performance goes non-linear — Eric Wong <normalperson@...> 2011/12/16

Joel VanderWerf <joelvanderwerf@gmail.com> wrote:

[#391420] Accessing class instance variables from an instance? — "Shareef J." <shareef@...>

Hi there,

26 messages 2011/12/20
[#391454] Re: Accessing class instance variables from an instance? — Khat Harr <myphatproxy@...> 2011/12/21

Actually, now that I'm thinking about it the existing behavior sort of

[#391456] Re: Accessing class instance variables from an instance? — Josh Cheek <josh.cheek@...> 2011/12/21

On Tue, Dec 20, 2011 at 9:42 PM, Khat Harr <myphatproxy@hotmail.com> wrote:

[#391545] Kernel#exit raises an exception? — Khat Harr <myphatproxy@...>

While I was working on embedding an interpreter I wrote a function to

13 messages 2011/12/24

[#391618] rvmsh: An easy installer for RVM — Bryan Dunsmore <dunsmoreb@...>

I have recently begun work on a project called [rvmsh]

12 messages 2011/12/29

[#391783] Mailspam — Gunther Diemant <g.diemant@...>

Is there a way to stop this mailspam of Luca (Mail)?

12 messages 2011/12/29

[#391790] What’s the standard way of implementing #hash for value objects in Ruby? — Nikolai Weibull <now@...>

Hi!

23 messages 2011/12/29
[#391792] Re: What’s the standard way of implementing #hash for value objects in Ruby? — Gunther Diemant <g.diemant@...> 2011/12/29

I think you can't access instance variables from a class method, so

[#391793] Re: What’s the standard way of implementing #hash for value objects in Ruby? — Nikolai Weibull <now@...> 2011/12/29

On Thu, Dec 29, 2011 at 15:52, Gunther Diemant <g.diemant@gmx.net> wrote:

[#391811] Re: What’s the standard way of implementing #hash for value objects in Ruby? — Robert Klemme <shortcutter@...> 2011/12/29

On Thu, Dec 29, 2011 at 4:06 PM, Nikolai Weibull <now@bitwi.se> wrote:

[#391812] Re: What’s the standard way of implementing #hash for value objects in Ruby? — Nikolai Weibull <now@...> 2011/12/29

On Fri, Dec 30, 2011 at 00:26, Robert Klemme <shortcutter@googlemail.com> w=

[#391816] Re: What’s the standard way of implementing #hash for value objects in Ruby? — Josh Cheek <josh.cheek@...> 2011/12/30

On Thu, Dec 29, 2011 at 5:47 PM, Nikolai Weibull <now@bitwi.se> wrote:

[#391833] Re: What’s the standard way of implementing #hash for value objects in Ruby? — Robert Klemme <shortcutter@...> 2011/12/30

On Fri, Dec 30, 2011 at 12:47 AM, Nikolai Weibull <now@bitwi.se> wrote:

Re: How to pass a list of conditions as parameters

From: Sam Duncan <sduncan@...>
Date: 2011-12-14 18:51:44 UTC
List: ruby-talk #391265
On 14/12/11 21:27, Robert Klemme wrote:
> On Wed, Dec 14, 2011 at 3:05 AM, Sam Duncan<sduncan@wetafx.co.nz>  wrote:
>> On 14/12/11 14:28, Thescholar Thescholar wrote:
>>> I知 unsure how to explain this one so I'll do my best.
>>>
>>> Technically, I would like to pass an array of numbers and an array of
>>> conditions as parameters in a method. The tricky part is that I would
>>> like to evaluate each number of that array to each condition of that
>>> other array.
>>>
>>> The reason I would like to achieve something like this is because I plan
>>> to change the list of rules/conditions each time I want to call this
>>> method.
> But what is the desired output?  That's crucial for the solution (see below).
>
>>> Here痴 the unworking code so far:
>>>
>>> (see attachment)
>>>
>>> Thank you in advance for your valuable support! Any help or hyperlinks
>>> with explanations is greatly appreciated!
>>>
>>> Attachments:
>>> http://www.ruby-forum.com/attachment/6838/array_of_conditions.txt
>>>
>> Nothing pretty or fancy here, but seems to do it? Note, I think the hash
>> interpolation is a 1.9.x thing.
>>
>>
>> array_of_numbers = [0, 2, 4, 7, 10, 25]
>>
>> # these could easily come from a config file/ db/ whatevs
>> array_of_eval_conditions = [ "(%{number} == 2)", "(%{number} == 5 and
>> %{number} == 5)", "(%{number} != 1)"]
>>
>> # these could too, but would require a few more hoops
>> array_of_lambda_conditions = [lambda {|x| x == 2}, lambda {|x| x == 5 and x
>> == 5}, lambda {|x| x != 1}]
> Why "more hoops"?  There is no point in having conditions in Strings
> if they are constant in the script.  There is no need for eval here.
>
> Please note that an more recent versions of Ruby (at least 1.9.3)
> lamba implements operator === which is reasonable because then you can
> use a lambda as condition in a case expression and with
> Enumerable#grep:
>
> irb(main):004:0>  pos = lambda {|x| x>= 0}
> =>  #<Proc:0x100e300c@(irb):4 (lambda)>
> irb(main):005:0>  vals = [-10,-5,0,5,10]
> =>  [-10, -5, 0, 5, 10]
>
> irb(main):007:0>  vals.each {|v| p v, pos[v], pos === v; case v;when
> pos;puts "pos";else puts "not" end}
> -10
> false
> false
> not
> -5
> false
> false
> not
> 0
> true
> true
> pos
> 5
> true
> true
> pos
> 10
> true
> true
> pos
> =>  [-10, -5, 0, 5, 10]
>
> There do exists ways to do this already, e.g. assuming that conditions
> are in an array of lambdas:
>
> # get all which satisfy all conditions
> items.select {|x| conditions.all? {|c| c[v]}}
>
> # get first which satisfies all conditions
> items.find {|x| conditions.all? {|c| c[v]}}
>
> # get all which satisfy any condition
> items.select {|x| conditions.any? {|c| c[v]}}
>
> # get first which satisfies any condition
> items.find {|x| conditions.any? {|c| c[v]}}
>
> See also Enumerable#reject etc.
>
> Kind regards
>
> rober
>
Having the expressions as strings means you can very easily load them 
from a data store or config file - the fact they are constant in this 
/example/ is incidental =]
This is not so easy with lambdas which was my point. It also lends 
itself to a simple boolean expression syntax which can conceivably be 
configured by a non-coder. The OP does not have 1.9.x by the way.

Sam


In This Thread