[#57185] Cipher book for ruby — Shannon Fang <xrfang@...>

Hi all ruby gurus there,

16 messages 2002/12/01

[#57228] What do some of Ruby's symbols mean? — "Gavin Sinclair" <gsinclair@...>

This could do with some community input before going to the FAQ. The format

31 messages 2002/12/01
[#57234] Re: [FAQ] What do some of Ruby's symbols mean? — dblack@... 2002/12/01

Hi --

[#57237] Re: [FAQ] What do some of Ruby's symbols mean? — Shannon Fang <xrfang@...> 2002/12/01

Hi David

[#57246] [Revised] What do some of Ruby's symbols mean? — "Gavin Sinclair" <gsinclair@...>

Thanks for the instant feedback. And apologies for the offensive late-night

11 messages 2002/12/01

[#57337] Memory consumption problem with recursion — squidster@... (Squidster)

Fellow Rubyists/Rubyians/Rubyans,

10 messages 2002/12/02

[#57349] [Revised again] What are the non-alphanumerical symbols in Ruby code? — "Gavin Sinclair" <gsinclair@...>

Folks,

13 messages 2002/12/02

[#57380] Ruby Book for People Who Aren't (Yet) Programmers — "Chris" <nemo@...>

Hello,

11 messages 2002/12/02

[#57403] Newsgroup — Daniel Carrera <dcarrera@...>

Hello,

28 messages 2002/12/02
[#57409] Re: Newsgroup — "Chris Morris" <chrismo@...> 2002/12/02

In addition, this mailing list is a mirror of the newsgroup, so there's no

[#57411] Re: Newsgroup — Daniel Carrera <dcarrera@...> 2002/12/02

Ruby Book for People Who Aren't (Yet) Programmers

[#57412] Re: Newsgroup — Mauricio Fern疣dez <batsman.geo@...> 2002/12/02

On Tue, Dec 03, 2002 at 04:50:10AM +0900, Daniel Carrera wrote:

[#57438] Re: Newsgroup — Daniel Carrera <dcarrera@...> 2002/12/03

> You might already have received it by now. Get used to receiving the

[#57439] Re: Newsgroup — "Gavin Sinclair" <gsinclair@...> 2002/12/03

[#57440] Re: Ruby Book for People Who Aren't (Yet) Programmers — Daniel Carrera <dcarrera@...> 2002/12/03

> I heard a little while back that there might be a Ruby book in the works for

[#57480] Re: Ruby Book for People Who Aren't (Yet) Programmers — Martin DeMello <martindemello@...> 2002/12/03

Daniel Carrera <dcarrera@math.umd.edu> wrote:

[#57598] Class variables problem — Peter Hickman <peter@...>

I have used

16 messages 2002/12/04

[#57694] Re: Ruby Book for People Who Aren't (Yet) Programmers — "Bill Kelly" <billk@...>

Hi,

13 messages 2002/12/05

[#57735] Re: elseif? — "Shannon Fang" <xrfang@...>

How about a vote? I vote to add elseif as an alternative... Least

20 messages 2002/12/05

[#57816] ratlast 0.1 -- embedded FORTH in Ruby — Mark Probert <probertm@...>

18 messages 2002/12/05

[#57826] Re: elseif? — "Ted" <ted@...>

Yuk! Ruby was presented to me as a 'clean' language.

38 messages 2002/12/05

[#57833] on error resume next — Shannon Fang <xrfang@...>

Hi,

22 messages 2002/12/05

[#57856] Buffered output on Windows — "Chris Pine" <nemo@...>

Quick question:

26 messages 2002/12/05

[#58093] Thank God for backups — Daniel Carrera <dcarrera@...>

I was working on the tutorial just now and wanted to delete all the *~

48 messages 2002/12/07
[#58096] Re: Thank God for backups — "Gavin Sinclair" <gsinclair@...> 2002/12/07

From: "Daniel Carrera" <dcarrera@math.umd.edu>

[#58188] The Ruby Way — Daniel Carrera <dcarrera@...>

What do people think of "The Ruby Way"?

18 messages 2002/12/08

[#58394] Ruby BUG when using PStore and fork — Jeremy Henty <jeremy@...>

PStore does not appear to play well with fork. This script

20 messages 2002/12/09

[#58438] warnings -w — Daniel Carrera <dcarrera@...>

Hello,

20 messages 2002/12/10
[#58439] Re: warnings -w — matz@... (Yukihiro Matsumoto) 2002/12/10

Hi,

[#58441] Re: warnings -w — Daniel Carrera <dcarrera@...> 2002/12/10

> It sets $VERBOSE to true, and gives you extra warnings on parsing.

[#58444] Re: warnings -w — matz@... (Yukihiro Matsumoto) 2002/12/10

[#58446] Re: warnings -w — Daniel Carrera <dcarrera@...> 2002/12/10

> |Thanks. Can you give me an example of a parsing warning that it would

[#58447] Re: warnings -w — matz@... (Yukihiro Matsumoto) 2002/12/10

Hi,

[#58473] Problems transporting nil values using XMLRPC (net/http ?) — Martin Hart <martin@...>

12 messages 2002/12/10

[#58479] Pymacs in ruby? — "Mike Campbell" <michael_s_campbell@...>

This is probably way, way OT, but has anyone considered something along the

15 messages 2002/12/10

[#58597] calling a perl script — max <max@...>

hi

17 messages 2002/12/11

[#58657] functional programming "style" — "zesar" <i_wont@...>

i discovered ruby some weeks ago and i have to say now that i'm through with

13 messages 2002/12/11

[#58662] Re: The coolest thing since sliced bread — "Garriss, Michael" <Michael.Garriss@...>

Ugh! Free write forces users into a new editor? I'm lost without Vim.

21 messages 2002/12/11

[#58677] help -- persuade my boss to adopt ruby — Shannon Fang <xrfang@...>

Hi Ruby Lovers,

18 messages 2002/12/11

[#58689] Re: [ANN] jabber4r 0.3.0 (doesn't work with raa-install) — ptkwt@...1.aracnet.com (Phil Tomson)

15 messages 2002/12/11
[#58751] Re: [ANN] jabber4r 0.3.0 (doesn't work with raa-install) — ptkwt@...1.aracnet.com (Phil Tomson) 2002/12/12

In article <20021211171825.GA2345@localhost.localdomain>,

[#58724] Problem loading extensions in OSX 10.2.2 — Dave Thomas <Dave@...>

12 messages 2002/12/12

[#58730] Re: do I really not understand inheritance?? — "Chris Pine" <nemo@...>

AHA!!!

22 messages 2002/12/12
[#58769] Re: do I really not understand inheritance?? — dblack@... 2002/12/12

Hi --

[#58785] Re: do I really not understand inheritance?? — "Chris Pine" <nemo@...> 2002/12/12

Hmm.... I see what you're saying, I think. I was going to give you a

[#58819] Re: do I really not understand inheritance?? — dblack@... 2002/12/12

Hi --

[#58738] Re: help -- persuade my boss to adopt ruby — "Ted" <ted@...>

Dang! Ugly American idioms...

15 messages 2002/12/12
[#58742] Re: help -- persuade my boss to adopt ruby — "Russ Freeman" <russ@...> 2002/12/12

My advice:

[#58804] Re: help -- persuade my boss to adopt ruby — "Shannon Fang" <xrfang@...>

>it's the MATZ'S position that Ruby will never be REAL WORLD language.

102 messages 2002/12/12
[#59295] Re: help -- persuade my boss to adopt ruby — "Rich" <rich@...> 2002/12/17

The problem lies in the fact that these statements are equal:

[#59325] Re: help -- persuade my boss to adopt ruby — Austin Ziegler <austin@...> 2002/12/17

On Tue, 17 Dec 2002 16:49:47 +0900, Rich wrote:

[#59407] Re: help -- persuade my boss to adopt ruby — "Gavin Sinclair" <gsinclair@...> 2002/12/18

From: "Dan Sugalski" <dan@sidhe.org>

[#59161] Re: help -- persuade my boss to adopt ruby — "Hal E. Fulton" <hal9000@...> 2002/12/16

----- Original Message -----

[#59181] Re: help -- persuade my boss to adopt ruby — "Bulat Ziganshin" <bulatz@...> 2002/12/16

Hello Hal,

[#58870] replace setup.rb/install.rb with builtin module — ptkwt@...1.aracnet.com (Phil Tomson)

I proposed this idea last night on the tail-end of another thread and on

10 messages 2002/12/12

[#58913] Inheritance Question — Jim Freeze <jim@...>

Hi

38 messages 2002/12/12
[#58957] Re: Inheritance Question — "Gavin Sinclair" <gsinclair@...> 2002/12/13

From: "Jim Freeze" <jim@freeze.org>

[#58973] Re: Inheritance Question — Jim Freeze <jim@...> 2002/12/13

On Friday, 13 December 2002 at 15:45:27 +0900, Gavin Sinclair wrote:

[#58974] Re: Inheritance Question — ts <decoux@...> 2002/12/13

>>>>> "J" == Jim Freeze <jim@freeze.org> writes:

[#58993] Re: Inheritance Question — ahoward <ahoward@...> 2002/12/13

[#58998] Re: Inheritance Question — ts <decoux@...> 2002/12/13

>>>>> "a" == ahoward <ahoward@fsl.noaa.gov> writes:

[#59002] Re: Inheritance Question — ahoward <ahoward@...> 2002/12/13

On Sat, 14 Dec 2002, ts wrote:

[#59003] Re: Inheritance Question — ts <decoux@...> 2002/12/13

>>>>> "a" == ahoward <ahoward@fsl.noaa.gov> writes:

[#59108] un-extending objects — dblack@...

Hi --

17 messages 2002/12/15

[#59174] Toward ruby-lang.org renewal; trial website offered — matz@... (Yukihiro Matsumoto)

Hi,

33 messages 2002/12/16
[#59202] Re: Toward ruby-lang.org renewal; trial website offered — Trevor.Jenkins@... (Trevor Jenkins) 2002/12/16

On Mon, 16 Dec 2002 14:26:19 +0900, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:

[#59203] Re: Toward ruby-lang.org renewal; trial website offered — Tim Bates <tim@...> 2002/12/16

On Mon, 16 Dec 2002 08:11 pm, Trevor Jenkins wrote:

[#59204] Re: Toward ruby-lang.org renewal; trial website offered — "NAKAMURA, Hiroshi" <nahi@...> 2002/12/16

Hi, all,

[#59343] OT: Functional Language Recommendation — Wai-Sun Chia <waisun.chia@...>

Sorry for the OT post, but I need some advise from some like-minded

23 messages 2002/12/17

[#59392] Re: [OT] RE: help -- persuade my boss to adopt ruby — "Austin Ziegler" <austin@...>

> Ok, I confess: I know nothing about data

10 messages 2002/12/17

[#59508] ANN: FXRuby-1.0.17 Now Available — Lyle Johnson <lyle@...>

-----BEGIN PGP SIGNED MESSAGE-----

15 messages 2002/12/18
[#59518] Re: ANN: FXRuby-1.0.17 Now Available — Jim Freeze <jim@...> 2002/12/18

On Thursday, 19 December 2002 at 2:51:08 +0900, Lyle Johnson wrote:

[#59537] Re: ANN: FXRuby-1.0.17 Now Available — Lyle Johnson <lyle@...> 2002/12/18

Jim Freeze wrote:

[#59568] Re: ANN: FXRuby-1.0.17 Now Available — Jim Freeze <jim@...> 2002/12/19

On Thursday, 19 December 2002 at 7:11:59 +0900, Lyle Johnson wrote:

[#59617] Re: ANN: FXRuby-1.0.17 Now Available — Lyle Johnson <lyle@...> 2002/12/19

Jim Freeze wrote:

[#59635] FXRuby and OS X 10.2 (Re: ANN: FXRuby-1.0.17 Now Available) — Brian Wisti <brian@...> 2002/12/19

Hi Lyle,

[#59564] Test::Unit 0.1.5 — <nathaniel@...>

What with all the holiday cheer going around (who can't be cheerful with

24 messages 2002/12/19
[#59621] Re: [ANN] Test::Unit 0.1.5 — Lyle Johnson <lyle@...> 2002/12/19

nathaniel@NOSPAMtalbott.ws wrote:

[#59625] Re: [ANN] Test::Unit 0.1.5 — <nathaniel@...> 2002/12/19

Lyle Johnson [mailto:lyle@users.sourceforge.net] wrote:

[#59808] ANN: FreeRIDE 0.5.0 Release Candidate 1 — "Curt Hibbs" <curt@...>

[drum roll...]

24 messages 2002/12/23

[#59834] ruby-dev summary 19069-19150 — TAKAHASHI Masayoshi <maki@...>

Hello all,

15 messages 2002/12/24

[#59854] ANN: ruby 1.6.8 — matz@... (Yukihiro Matsumoto)

Hello everyone,

16 messages 2002/12/24

[#59954] 1210 / 100 = 12? what? — Tom Sawyer <transami@...>

can someone explain this to me:

35 messages 2002/12/27
[#59955] Re: 1210 / 100 = 12? what? — Gavin Sinclair <gsinclair@...> 2002/12/27

Hello Tom,

[#59957] Re: 1210 / 100 = 12? what? — Tom Sawyer <transami@...> 2002/12/27

no i didn't realize that. i thought ruby would automatically change it to a

[#59962] Re: 1210 / 100 = 12? what? — Brian Wisti <brian@...> 2002/12/27

Hi Tom,

[#59968] Re: 1210 / 100 = 12? what? — Tom Sawyer <transami@...> 2002/12/27

On Thursday 26 December 2002 11:42 pm, Brian Wisti wrote:

[#59984] Re: 1210 / 100 = 12? what? — Philipp Meier <meier@...> 2002/12/27

On Fri, Dec 27, 2002 at 04:10:59PM +0900, Tom Sawyer wrote:

[#59985] Re: 1210 / 100 = 12? what? — Lloyd Zusman <ljz@...> 2002/12/27

Philipp Meier <meier@meisterbohne.de> writes:

[#60006] Ruby & Preprinted forms - will they work together? — colotechpro@... (John Reed)

I'm a Ruby newbie, but I've decided to write a commercial application

18 messages 2002/12/27

[#60016] Installing Fox, FXRuby and fxscintilla — Daniel Carrera <dcarrera@...>

I want to try out FreeRide, but just installing its dependencies has been

22 messages 2002/12/27
[#60018] Re: Installing Fox, FXRuby and fxscintilla — Lyle Johnson <lyle@...> 2002/12/28

Daniel Carrera wrote:

[#60050] RAA suggestions — Gavin Sinclair <gsinclair@...>

1. Reserve "what's new" for genuinely new packages. Introduce a

15 messages 2002/12/28

[#60146] rbbr 0.2rev1 bombs out! — Wai-Sun Chia <waisun.chia@...>

rbbr is looking for a rbbr/config.rb module which is non-existent..

20 messages 2002/12/30
[#60147] Re: rbbr 0.2rev1 bombs out! — Masao Mutoh <mutoh@...> 2002/12/30

Hi,

[#60149] Re: rbbr 0.2rev1 bombs out! — Wai-Sun Chia <waisun.chia@...> 2002/12/30

Huh?

[#60188] Range#size — Martin DeMello <martindemello@...>

I think I missed something - why is Range#size (and all its synonyms)

19 messages 2002/12/30
[#60210] Re: Range#size — matz@... (Yukihiro Matsumoto) 2002/12/31

Hi,

[#60223] Re: Range#size — Gennady Bystritsky <bystr@...> 2002/12/31

From: Gennady F. Bystritsky <gfb@tonesoft.com>

[#60206] Developing a website — "Shashank Date" <sdate@...>

I am planning to use Ruby to develop a website which will be hosted on

17 messages 2002/12/31

[#60217] ENV.clear — zhoujing@... (TOTO)

I tried

15 messages 2002/12/31

[#60221] win32_popen 0.1 — "Park Heesob" <phasis@...>

Hi, all.

15 messages 2002/12/31

Re: do I really not understand inheritance??

From: dblack@...
Date: 2002-12-12 04:32:43 UTC
List: ruby-talk #58769
Hi --

On Thu, 12 Dec 2002, Chris Pine wrote:

> How am I supposed to get all of the Classes/Modules which some object 'obj'
> is a kind_of?  Get klass (as above) and call klass.ancestors?

To get all of them you'd want to traverse both the singleton class and
the non-singleton [do we have a better word than that?] class:

  class Object
    # This doesn't save any typing in this example, but
    # it can come in handy in the long run :-)
    def singleton_class
      class << self; self; end
    end

    def all_ancestors
      (singleton_class.ancestors + self.class.ancestors).uniq
    end
  end

  p ENV.all_ancestors   # [Enumerable, Object, Kernel]

> I guess all of my confusion, and thus my ultimate complaint comes back to
> this:
>
> Why doesn't the 'class' method return the singleton class?

Consider this:

  class A
    def A.some_method
      "hi"
    end
  end

I've defined a singleton method on the object A, which is a Class
object.  This singleton method is defined (by definition) in A's
singleton class.

Now, according to what you're suggesting, A would no longer be a Class
object, but would be a "class << A; self; end" object.  Then let's say
we do this:

  a = A.new

Well, A is not a Class any more, but let's assume it still responds to
'new'....  But what do we get from this:

  a.class

We can't get A, because A is no longer a Class!  So by simply adding a
singleton method to an object, we've tied everything in knots.

This example uses the familiar scenario of class methods (i.e.,
singleton methods added to Class objects), but the lesson is general:
the notion of the singleton class is part of a whole design, and can't
just be changed or discarded.  (I also happen to think it's intensely
cool, but I won't push that at the moment :-)

> Moreover, check this out:
>
>   class Foo
>   end
>
>   foo = Foo.new
>
>   klass = class << foo; self; end
>
>   p foo.instance_of? Foo    #  -->  true
>   p foo.instance_of? klass  #  -->  false
>
> That doesn't seem right to me at all.  (Though it does seem consistent, just
> consistently wrong... or at least confusing.)  I would say that foo *was* an
> instance of Foo, but that changed when you made foo do things other Foo's
> couldn't.  At that point (when foo got it's own singleton class), foo became
> an instance of klass.

I think you have to look at the overall design of Ruby, which
incorporates these two distinct constructs which have distinct roles.
They're not at war.  An object has a historical class, which is what
it was instantiated as, and it has a private "stash" of individuated
behavior which is called its singleton class.  Neither of these
obliterates the other.

Mind you, I don't want to discourage the loosening of the notion of an
object's "class".  Imagine what would happen to the idea of testing
for type:

  case thing
  when String ...
  when Array  ...
  when Thingy ...

if adding a singleton method to thing changed its class!

However, one thing at a time :-)  The design really does make sense.

> [...]
> ...why not just have the new regular (non-singleton) class created?  Is it
> such a terrible thing that someone *might* try to instantiate the class??

I'm tempted to say: think of it as a pseudo-class, or something,
though I don't want to muddy the waters of terminology.  In practical
terms, one thing to keep in mind is that nothing is denied you.  Ruby
offers a full suite of techniques for manipulating objects and their
capabilities.  The key to this is modules: mixing and matching object
capabilities through modules, objects can share exactly the kinds of
relations that one envisions with the (paradoxical) "multiple objects
of a singleton class" concept.


David

-- 
David Alan Black
home: dblack@candle.superlink.net
work: blackdav@shu.edu
Web:  http://pirate.shu.edu/~blackdav


In This Thread