Method proposition

hi all,
what do you think of these methods:

class TrueClass
  def switch
    false
  end
end

class FalseClass
  def switch
    true
  end
end

i think i could find some real use for this, though switch! would probably
be even more useful..
greetings, Dirk.

Hi --

···

On Sun, 22 Jan 2006, Dirk Meijer wrote:

hi all,
what do you think of these methods:

class TrueClass
def switch
   false
end
end

class FalseClass
def switch
   true
end
end

i think i could find some real use for this, though switch! would probably
be even more useful..

You don't like "not"? :slight_smile:

What would switch! do?

David

--
David A. Black
dblack@wobblini.net

"Ruby for Rails", from Manning Publications, coming April 2006!

hi,

You don't like "not"? :slight_smile:

hmm.. guess i missed that :wink:

What would switch! do?

switch! would change self

greetings, Dirk.

hi again,

foobar=true
foobar=not(foobar)
doesn't seem to work, while i can see purpose in that,

light_switch=false
light_switch.switch if dark==true

True would become False. False would become True... Human sacrifice,
dogs and cats living together - mass hysteria!

···

On 1/21/06, dblack@wobblini.net <dblack@wobblini.net> wrote:

Hi --

On Sun, 22 Jan 2006, Dirk Meijer wrote:

> hi all,
> what do you think of these methods:
>
> class TrueClass
> def switch
> false
> end
> end
>
> class FalseClass
> def switch
> true
> end
> end
>
> i think i could find some real use for this, though switch! would probably
> be even more useful..

You don't like "not"? :slight_smile:

What would switch! do?

Hi --

···

On Sun, 22 Jan 2006, Dirk Meijer wrote:

hi,

You don't like "not"? :slight_smile:

hmm.. guess i missed that :wink:

What would switch! do?

switch! would change self

So:

   true.switch!
   1 == 1 # false

?

David

--
David A. Black
dblack@wobblini.net

"Ruby for Rails", from Manning Publications, coming April 2006!

er, the global value 'true' is the only instance of TrueClass. so,
doing true.switch! would make true become false?

So then,
if 1 == 1
  puts "hi"
end

Wouldn't print anything?

(I wouldn't want to maintain your programs :slight_smile:

···

On 1/21/06, Dirk Meijer <hawkman.gelooft@gmail.com> wrote:

hi,

> You don't like "not"? :slight_smile:

hmm.. guess i missed that :wink:

> What would switch! do?

switch! would change self

Hi --

···

On Sun, 22 Jan 2006, Dirk Meijer wrote:

hi again,

foobar=true
foobar=not(foobar)
doesn't seem to work, while i can see purpose in that,

You would do:

x = (not x)

or

x = !x

David

--
David A. Black
dblack@wobblini.net

"Ruby for Rails", from Manning Publications, coming April 2006!

er, the global value 'true' is the only instance of TrueClass. so,
doing true.switch! would make true become false?

So then,
if 1 == 1
puts "hi"
end

Wouldn't print anything?

that, on second thought, probably wouldn't work, and the following would
have to be used:

light_switch=false
light_switch=light_switch.switch if dark==true

dblack@wobblini.net writes:

You would do:

x = (not x)

Is it just me, or does the precedence of "not" horribly suck? :wink:

···

David

--
Christian Neukirchen <chneukirchen@gmail.com> http://chneukirchen.org

I think here is where a Symbol would be most fitting :wink:

  light_switch = :off
  light_switch = :on if dark?
  
E

···

On 2006.01.22 04:31, Dirk Meijer wrote:

> er, the global value 'true' is the only instance of TrueClass. so,
> doing true.switch! would make true become false?
>
> So then,
> if 1 == 1
> puts "hi"
> end
>
> Wouldn't print anything?

that, on second thought, probably wouldn't work, and the following would
have to be used:

light_switch=false
light_switch=light_switch.switch if dark==true

I'd just like to point out that this now makes it 4 Ruby programmers needed to change a lightbulb (or at least turn it on) so far in this thread. Would anybody like to take a guess at how many it would have taken in other languages?

···

On 21 Jan 2006, at 19:42, Eero Saynatkari wrote:

I think here is where a Symbol would be most fitting :wink:

  light_switch = :off
  light_switch = :on if dark?

--
Paul Robinson

Eero Saynatkari wrote:

er, the global value 'true' is the only instance of TrueClass. so,
doing true.switch! would make true become false?

So then,
if 1 == 1
puts "hi"
end

Wouldn't print anything?

that, on second thought, probably wouldn't work, and the following would
have to be used:

light_switch=false
light_switch=light_switch.switch if dark==true

I think here is where a Symbol would be most fitting :wink:

  light_switch = :off
  light_switch = :on if dark?

I don't get it...

light_switch = dark

should be the same as

light_switch=false
light_switch=light_switch.switch if dark==true

right? (and *please* don't compare to 'true' if something is true, it *is* already true, comparing it with true doesn't change that - never)

also

light_switch = !light_switch

should 'switch' the switch, right?

puzzled, or did i missed the joke?

Simon

···

On 2006.01.22 04:31, Dirk Meijer wrote: