[#5999] Re: Custom installation (1.6.1) — ts <decoux@...>
>>>>> "D" == David Suarez de Lis <excalibor@demasiado.com> writes:
[#6019] Time.local bug? — hal9000@...
Please tell me this is a bug, not a feature.
[#6028] Ref.: Re: Time.local bug? — David Suarez de Lis <excalibor@...>
Hi,
[#6042] Re: Time.local bug? — ts <decoux@...>
>>>>> "H" == Hugh Sasse Staff Elec Eng <hgs@dmu.ac.uk> writes:
[#6074] Re: Cygwin conflicts — "Conrad Schneiker/Austin/Contr/IBM" <schneik@...>
Conrad Schneiker wrote:
[#6078] Programming Ruby ranking — Aleksi Niemel<aleksi.niemela@...>
Just a small note how the Ruby book sells:
[#6083] ANN: Single step Ruby installation for Windows — Dave Thomas <Dave@...>
[#6092] Re: detect:ifNone: in Ruby — Aleksi Niemel<aleksi.niemela@...>
> I like it. You can also mess around with the built in classes to get
[#6097] Re: detect:ifNone: in Ruby — Aleksi Niemel<aleksi.niemela@...>
matz queries:
[#6102] What would a Ruby browser look like? — Dave Thomas <Dave@...>
[#6106] Re: What would a Ruby browser look like? — "Conrad Schneiker/Austin/Contr/IBM" <schneik@...>
Stephen White writes:
People are already talking about using Tk to do this, or doing it as a WWW
[#6121] More Date/Time inconsistencies — David Suarez de Lis <excalibor@...>
Hi all,
[#6122] Ruby Book, Eng. tl, 6.1 -- aimai ? — Jon Babcock <jon@...>
[#6138] Thoughts on a Ruby browser — hal9000@...
I have to issue a disclaimer first, that I am not a code browser user,
[#6143] Re: What would a Ruby browser look like? — "Conrad Schneiker/Austin/Contr/IBM" <schneik@...>
Matz writes:
[#6149] Ruby hi(gh), and pointer to Jotto program — David Alan Black <dblack@...>
Hello --
David Alan Black <dblack@candle.superlink.net> writes:
[#6181] Minimal but practically useful Ruby browser? — "Conrad Schneiker/Austin/Contr/IBM" <schneik@...>
Hi,
[#6206] Re: marshal.dump again — ts <decoux@...>
>>>>> "H" == Hugh Sasse Staff Elec Eng <hgs@dmu.ac.uk> writes:
[#6220] ruby-lang.org — Dave Thomas <Dave@...>
[#6246] Re: quiz of the week — "Brian F. Feldman" <green@...>
"Brian F. Feldman" <green@FreeBSD.org> wrote:
> In case anyone wants something else to try an example of how fun
[#6288] lchown()/etc. and Unix syscall completeness — "Brian F. Feldman" <green@...>
Ruby as it is now isn't very consistent with the system calls it provides.
[#6346] Re: Another Smalltalk control structure idea — "Conrad Schneiker/Austin/Contr/IBM" <schneik@...>
Matz writes:
On Tue, 14 Nov 2000 15:29:31 +0900, Conrad Schneiker/Austin/Contr/IBM wrote:
[#6363] Re: rescue clause affecting IO loop behavior — ts <decoux@...>
>>>>> "D" == David Alan Black <dblack@candle.superlink.net> writes:
Hello again --
matz@zetabits.com (Yukihiro Matsumoto) writes:
[#6383] 1.6.x documentation. — Hugh Sasse Staff Elec Eng <hgs@...>
On Tue, 14 Nov 2000, Yukihiro Matsumoto wrote:
[#6386] lots of Threads — Hugh Sasse Staff Elec Eng <hgs@...>
If I have an array to be filled with computationally heavy stuff,
Hugh Sasse Staff Elec Eng <hgs@dmu.ac.uk> writes:
On Thu, 16 Nov 2000, Dave Thomas wrote:
On Thu, 16 Nov 2000 19:59:07 +0900, Hugh Sasse Staff Elec Eng wrote:
[#6412] clas << a & Pascal's with <record> do...end — Hugh Sasse Staff Elec Eng <hgs@...>
I was thinking that when a lot of work must be done on an object
[#6417] Where is T_RANGE? — Robert Feldt <feldt@...>
Hi,
[#6444] Ruby tokenizer for Ruby — Charles Hixson <charleshixson@...>
Does anyone know of a Ruby tokenizer for Ruby? In particular, I am bother
[#6461] Is there a FITS_IN_UINT(v)? — Robert Feldt <feldt@...>
Hi,
Robert Feldt <feldt@ce.chalmers.se> writes:
[#6476] %x{...} and ` not working? — Niklas Backlund <d99-nba@...>
Hi,
[#6485] Re: GUI in ruby — "Conrad Schneiker" <schneik@...>
Hi,
[#6491] comp.lang.tcl -- The "Batteries Included" Distribution [LONG] — "Conrad Schneiker" <schneik@...>
Hi,
On Tue, 21 Nov 2000 16:58:30 +0900, Conrad Schneiker wrote:
[#6503] redefining methods in a hierarchy. — Hugh Sasse Staff Elec Eng <hgs@...>
If I have an object which I know to be a subclass of a subclass (at lease)
[#6518] Re: Question about the behavior of write att ributes in blocks — Aleksi Niemel<aleksi.niemela@...>
> Is it at all possible to write an iterator, which allows assignments
Thank you for explanation - the output of "x".inspect() is
"Christoph Rippel" <chr@subdimension.com> writes:
I lifted the following two lines from your (great) book - Page 285
[#6521] Time Trouble — Niklas Backlund <d99-nba@...>
Hi,
Niklas Backlund <d99-nba@nada.kth.se> writes:
[#6523] alias_method and > and < — Hugh Sasse Staff Elec Eng <hgs@...>
The operators > and < don't seem to be in the list of things one cannot
[#6550] Note on docs for Array#reverse! — Robert Feldt <feldt@...>
[#6571] Re: Ruby/C extension build question — Arjen Laarhoven <arjen@...>
Oops:
[#6579] ANN: Ruby/GDChart 0.0.1 available — Arjen Laarhoven <arjen@...>
Hi all,
[#6582] best way to interleaf arrays? — David Alan Black <dblack@...>
Hello --
David Alan Black <dblack@candle.superlink.net> wrote:
David Alan Black <dblack@candle.superlink.net> writes:
David Alan Black <dblack@candle.superlink.net> writes:
On Tue, 28 Nov 2000, Dave Thomas wrote:
[#6597] Question on sort! — Dave Thomas <Dave@...>
matz@zetabits.com (Yukihiro Matsumoto) writes:
Hi,
> The latter can be avoided if one follows the no-bang-method-chain
[#6642] Hash with a key of nil ? — rpmohn@... (Ross Mohn)
While reading data in from a file and populating a hash, I accidentally
[#6646] RE: Array Intersect (&) question — Aleksi Niemel<aleksi.niemela@...>
Ross asked something about widely known and largely ignored language (on
aleksi.niemela@cinnober.com (Aleksi Niemel) wrote in
> >Use a hash. Here's code to do both and more. It assumes that
Hi,
----- Original Message -----
[#6656] printing/accessing arrays and hashes — raja@... (Raja S.)
I'm coming to Ruby with a Python & Common Lisp background.
matz@zetabits.com (Yukihiro Matsumoto) writes:
[#6666] Suggestion for addition to Begin/End syntax — drew@... (Andrew D. McDowell)
Hi all.
Hi,
[ruby-talk:6663] Re: best way to interleaf arrays?
On Wed, 29 Nov 2000, Dave Thomas wrote:
> David Alan Black <dblack@candle.superlink.net> writes:
>
> > I was wondering about a block form. I'm not sure exactly what it
> > would do -- specifically, whether the results of the block would
> > pertain to the keys or the values of the new hash. In other words,
> > would it be this:
> >
> > each_with_index { |e,i| h[i] = yield(i, e) }
> >
> > or this:
> >
> > each_with_index { |e,i| h[yield(i, e)] = e }
> >
>
> or
> module Enumerable
> def to_h(value = 1)
> h = {}
> if block_given?
> each_with_index {|e,i| hk,hv = yield(e,i); h[hk] = hv }
> else
> each {|hv| h[hv] = value }
> end
> h
> end
> end
Oh, ok :-)
For what it's worth, here are the results of an attempt on my part to
chart a path, method by method, from a very simple to_h approach to
the more complex, useful ones (including use of blocks). The idea is
to be as incremental as possible, defining later methods largely in
terms of earlier ones (including an interleave method). My goal was
to see how the principle of the array not "knowing" too much holds up,
as things move beyond the level of an array just allowing itself to be
interpreted as a hash and onto the level of things like accepting a
value to set all the hash values to. (I couldn't see how that could
*not* represent an array knowing too much, until I worked it through
as shown below.)
This stuff is not optimized or debugged, nor is it meant as a
practical way of organizing or naming methods. It's more a sort of
exploded/implemented model of this train of thought.
module Enumerable
# For convenience, adapted from the latest ruby-talk consensus
def interleave(enum2)
e1, e2, res = to_a.reverse, enum2.to_a.reverse, []
res.push e1.pop, e2.pop until e1.empty? or e2.empty?
res + (e1 + e2) .reverse
end
# The simplest to_h: array elements are taken two at a time.
# (Not even indices -- just elements.)
def to_h_raw
a = dup
h = {}
h[a.shift] = a.shift || nil until a.empty?
h
end
# Now, building on that:
# Indices as keys
def to_h_ikeys
(0...size) .interleave(self) .to_h_raw
end
# Elements as keys
def to_h_ekeys
to_h_ikeys .invert
end
# Elements as keys, values all set to value
def to_h_v(value)
interleave([].fill(value, 0...size)) .to_h_raw
end
# Block version
def to_h_b
(0...size) .map { |i| yield(at(i),i) } .flatten .to_h_raw
end
end
ary = %w{one two three}
ary.to_h_raw # => {"one"=>"two", "three"=>nil}
ary.to_h_ikeys # => {0=>"one", 1=>"two", 2=>"three"}
ary.to_h_ekeys # => {"one"=>0, "three"=>2, "two"=>1}
ary.to_h_v true # => {"one"=>true, "three"=>true, "two"=>true}
ary.to_h_b { |e,|
[e.upcase, true]
} # => {"ONE"=>true, "THREE"=>true, "TWO"=>true}
__END__
David
--
David Alan Black
home: dblack@candle.superlink.net
work: blackdav@shu.edu
Web: http://pirate.shu.edu/~blackdav