[#5563] Non-overridable and non-redefinable methods — Eric Mahurin <eric_mahurin@...>

Lately, I've been thinking about the future of ruby

44 messages 2005/08/19
[#5564] Re: Non-overridable and non-redefinable methods — Austin Ziegler <halostatue@...> 2005/08/19

On 8/19/05, Eric Mahurin <eric_mahurin@yahoo.com> wrote:

[#5571] Re: Non-overridable and non-redefinable methods — Eric Mahurin <eric_mahurin@...> 2005/08/19

--- Austin Ziegler <halostatue@gmail.com> wrote:

[#5574] Re: Non-overridable and non-redefinable methods — TRANS <transfire@...> 2005/08/20

Just wanted to add a few things.

[#5581] Re: Non-overridable and non-redefinable methods — Austin Ziegler <halostatue@...> 2005/08/20

On 8/19/05, TRANS <transfire@gmail.com> wrote:

[#5583] Re: Non-overridable and non-redefinable methods — "David A. Black" <dblack@...> 2005/08/20

Hi --

[#5585] Re: Non-overridable and non-redefinable methods — Eric Mahurin <eric_mahurin@...> 2005/08/20

--- "David A. Black" <dblack@wobblini.net> wrote:

[#5609] Pathname#walk for traversing path nodes (patch) — ES <ruby-ml@...>

Here is a small addition to Pathname against 1.9, probably suited

20 messages 2005/08/22

Re: Pathname#walk for traversing path nodes (patch)

From: "David A. Black" <dblack@...>
Date: 2005-08-24 20:36:16 UTC
List: ruby-core #5672
On Thu, 25 Aug 2005, mathew wrote:

> David A. Black wrote:
>
>> On Thu, 25 Aug 2005, mathew wrote:
>> 
>>> ES wrote:
>>> 
>>>> The absolute best name would be simply #each (incidentally, looks like
>>>> it would be available). That failing, #walk, #traverse or #each_node.
>>> 
>>> 
>>> 
>>> I'd like to suggest "descend", because it's really descending into the 
>>> path provided.
>> 
>> 
>> The thing is, though, it isn't really descending.  The path may not
>> even exist.  It's just moving from left to right through a bunch of
>> tokens, which may or may not correspond to a real filesystem.  If it
>> were really a full traversal, you'd get:
>> 
>>   a
>>   a/b
>>   a/b/c
>>   a/b/c/d
>
>
> Digging into the archive for the original example:
>
>> Pathname.new('/path/to/some/file.rb').walk {|dir| p dir}
>>    #<Pathname:/path>
>>    #<Pathname:/path/to>
>>    #<Pathname:/path/to/some>
>>    #<Pathname:/path/to/some/file.rb>

Whoops.  I got that all screwed up in my mind.  Never mind, then....
though I do think that "descend" suggests to strongly the actual
traversal of a filesystem.  If it's not supposed to be that, but just
to be in recognition of the "descent" of the elements of the path,
then every method that followed that kind of traversal would be called
"descend", which I don't think they should be.


David

P.S. Upside-down trees: it's not just computer scientists; family
trees are upside-down too.  Sometimes even sideways....

-- 
David A. Black
dblack@wobblini.net

In This Thread