[#24105] [Bug #1711] Marshal Failing to Round-Trip Certain Recurisve Data Structures — Run Paint Run Run <redmine@...>

Bug #1711: Marshal Failing to Round-Trip Certain Recurisve Data Structures

9 messages 2009/07/01

[#24116] [Bug #1715] Numeric#arg for NaN is Inconsistent Across Versions — Run Paint Run Run <redmine@...>

Bug #1715: Numeric#arg for NaN is Inconsistent Across Versions

10 messages 2009/07/02

[#24240] [Bug #1755] IO#reopen Doesn't Fully Associate with Given Stream on 1.9; Ignores pos on 1.8 — Run Paint Run Run <redmine@...>

Bug #1755: IO#reopen Doesn't Fully Associate with Given Stream on 1.9; Ignores pos on 1.8

8 messages 2009/07/09

[#24321] [Bug #1773] Gem path doesn't honor user gem? — Lin Jen-Shin <redmine@...>

Bug #1773: Gem path doesn't honor user gem?

12 messages 2009/07/14

[#24390] [Feature #1784] More encoding (Big5 series) support? — Lin Jen-Shin <redmine@...>

Feature #1784: More encoding (Big5 series) support?

12 messages 2009/07/16

[#24467] Re: [ruby-cvs:31226] Ruby:r24008 (ruby_1_8_6): Removed private on to_date and to_datetime. — Urabe Shyouhei <shyouhei@...>

Hello.

10 messages 2009/07/21

[#24472] [Feature #1800] rubygems can replace system executable files — Kazuhiro NISHIYAMA <redmine@...>

Feature #1800: rubygems can replace system executable files

13 messages 2009/07/21

[#24530] [Feature #1811] Default BasicSocket.do_not_reverse_lookup to true — Roger Pack <redmine@...>

Feature #1811: Default BasicSocket.do_not_reverse_lookup to true

9 messages 2009/07/23

[#24624] [Bug #1844] Immediates Should Not Respond to :dup — Run Paint Run Run <redmine@...>

Bug #1844: Immediates Should Not Respond to :dup

15 messages 2009/07/30

[ruby-core:24258] [Bug #1747] Immediate Values Can be Frozen

From: Run Paint Run Run <redmine@...>
Date: 2009-07-11 05:11:10 UTC
List: ruby-core #24258
Issue #1747 has been updated by Run Paint Run Run.


Defining instance methods on Fixnum instances seems a particularly contrived case, even for ruby-core. ;-) The troubled soul wishing to engage in such hackery could surely stretch as far as using a Struct to wrap his annotated numerals? Note that freezing immediates does not imply freezing their classes; singleton methods could still be added if desired. 

In addition, it makes little conceptual sense to freeze a value that is frozen by definition. This is especially obvious when you consider that because immediates can't be dup'd, they can never be thawed. The abstraction is broken.

Triskadekaphobiacs are presumably upset that, although 13.untrust appears to succeed and reinforce their beliefs, the state doesn't stick; 13.untrusted? subsequently returns false. Similarly, logicians and cynics alike must, respectively, rejoice and despair that `true.untrust.untrusted?` is perpetually false.

It is irrational in equal measures to #freeze an immediate as it is to #dup it; to #taint truth (`true`) as it is to assign to it; to #trust the unknowable (nil) as it is to #untrust it.

If methods don't make a sense for an object, they shouldn't appear to work. :-)
----------------------------------------
http://redmine.ruby-lang.org/issues/show/1747

----------------------------------------
http://redmine.ruby-lang.org

In This Thread