[#39432] require and case — Martin Stannard <martin@...>

17 messages 2002/05/02

[#39463] RE: require and case — "Berger, Daniel" <djberge@...>

> --- Erik Bagfors <erik@bagfors.nu> wrote:

32 messages 2002/05/02
[#39699] Re: require and case — "Baptiste Lepilleur" <gaiacrtn@...> 2002/05/06

I confirm this behavior. I stumbled on something similar on ruby 1.6.7

[#39700] Re: require and case — ts <decoux@...> 2002/05/06

>>>>> "B" == Baptiste Lepilleur <gaiacrtn@free.fr> writes:

[#39718] Re: require and case — Dave Thomas <Dave@...> 2002/05/06

ts <decoux@moulon.inra.fr> writes:

[#39735] Re: require and case — matz@... (Yukihiro Matsumoto) 2002/05/06

Hi,

[#39534] dynamically assigning instance variables — "Berger, Daniel" <djberge@...>

Hi all,

25 messages 2002/05/03
[#39547] Re: dynamically assigning instance variables — harryo@... (Harry Ohlsen) 2002/05/04

wconrad@yagni.com wrote in message news:<20020503220050.GA443@pluto>...

[#39565] Re: dynamically assigning instance variables — Jean-Hugues ROBERT <jean_hugues_robert@...> 2002/05/04

Hello,

[#39568] Class methods defined in a module, how-to ? — Jean-Hugues ROBERT <jean_hugues_robert@...> 2002/05/04

[#39585] Ruby vs. Java vs. Native trivia — ser@... (Sean Russell)

Hi,

18 messages 2002/05/04

[#39657] newbie Q: how to strip blank lines from file? — Stewart Midwinter <stewart@..._midwinter.ca>

Well, I've spent a few days reading about Ruby, and want to try my first

11 messages 2002/05/06

[#39723] WWW.RUBYCONF.ORG — Christine Hall <return@...>

15 messages 2002/05/06

[#39796] Result of I need your experience - classification and comparison of languages — yvan.radenac@... (Yvan Radenac)

Hi,

21 messages 2002/05/07

[#39809] 'Ultimate' FreeRIDE ? — "Euan Mee" <xlucid@...>

[Note: This is a post to the FreeRIDE developers mailing list, which I have

16 messages 2002/05/07
[#39871] Re: 'Ultimate' FreeRIDE ? — Lothar Scholz <llothar@...> 2002/05/08

On Tue, 07 May 2002 20:52:06 GMT, "Euan Mee"

[#39821] non-alphabetic character in symbol — kwatch@... (kwatch)

Hi,

14 messages 2002/05/08

[#39887] Thread#join doesn't accept a timeout? — Dossy <dossy@...>

Hi,

27 messages 2002/05/09
[#39961] RE: Thread#join doesn't accept a timeout? — "Nathaniel Talbott" <nathaniel@...> 2002/05/09

Dossy [mailto:dossy@panoptic.com] wrote:

[#39968] Re: Thread#join doesn't accept a timeout? — Dossy <dossy@...> 2002/05/09

On 2002.05.10, Nathaniel Talbott <nathaniel@talbott.ws> wrote:

[#39898] cgi params api — patrick-may@... (Patrick May)

One thing that I don't like is the way cgi forces you to treat every

93 messages 2002/05/09
[#40032] Re: cgi params api — patrick-may@... (Patrick May) 2002/05/10

patrick-may@monmouth.com (Patrick May) wrote in message news:<3b3ad3b4.0205091447.5b00ce98@posting.google.com>...

[#40037] Re: cgi params api — Jean-Hugues ROBERT <jean_hugues_robert@...> 2002/05/10

At 02:23 11/05/2002 +0900, you wrote:

[#40049] Re: cgi params api — Wakou Aoyama <wakou@...> 2002/05/10

On Sat, May 11, 2002 at 03:27:13AM +0900,

[#40052] Re: cgi params api — Jean-Hugues ROBERT <jean_hugues_robert@...> 2002/05/10

At 05:56 11/05/2002 +0900, you wrote:

[#40137] Re: cgi params api — patrick-may@... (Patrick May) 2002/05/12

Wakou Aoyama <wakou@fsinet.or.jp> wrote in message news:<20020511121152.GA29832%wakou@fsinet.or.jp>...

[#40139] Re: cgi params api — Sean Chittenden <sean@...> 2002/05/12

> > If you access reqs['key'], then you'll always get a non-array object.

[#40144] Re: cgi params api — Dossy <dossy@...> 2002/05/12

On 2002.05.12, Sean Chittenden <sean@chittenden.org> wrote:

[#40148] Re: cgi params api — David Alan Black <dblack@...> 2002/05/12

Hello --

[#40159] Re: cgi params api — Dossy <dossy@...> 2002/05/12

On 2002.05.12, David Alan Black <dblack@candle.superlink.net> wrote:

[#40162] Re: cgi params api — Wakou Aoyama <wakou@...> 2002/05/12

On Mon, May 13, 2002 at 01:37:40AM +0900,

[#40191] Re: cgi params api — Dossy <dossy@...> 2002/05/13

On 2002.05.13, Wakou Aoyama <wakou@fsinet.or.jp> wrote:

[#40194] Re: cgi params api — David Alan Black <dblack@...> 2002/05/13

Hello --

[#40197] Re: cgi params api — Dossy <dossy@...> 2002/05/13

On 2002.05.13, David Alan Black <dblack@candle.superlink.net> wrote:

[#40198] Re: cgi params api — David Alan Black <dblack@...> 2002/05/13

Hi --

[#40203] Re: cgi params api — Dossy <dossy@...> 2002/05/13

On 2002.05.13, David Alan Black <dblack@candle.superlink.net> wrote:

[#40209] Re: cgi params api — Dave Thomas <Dave@...> 2002/05/13

Dossy <dossy@panoptic.com> writes:

[#40222] Re: cgi params api — Dossy <dossy@...> 2002/05/13

On 2002.05.13, Dave Thomas <Dave@PragmaticProgrammer.com> wrote:

[#40228] Re: cgi params api — Wakou Aoyama <wakou@...> 2002/05/13

On Tue, May 14, 2002 at 12:59:37AM +0900,

[#40229] Re: cgi params api — Dossy <dossy@...> 2002/05/13

On 2002.05.14, Wakou Aoyama <wakou@fsinet.or.jp> wrote:

[#40250] Re: cgi params api — Wakou Aoyama <wakou@...> 2002/05/13

Hi,

[#40291] Re: cgi params api — Dossy <dossy@...> 2002/05/14

On 2002.05.14, Wakou Aoyama <wakou@fsinet.or.jp> wrote:

[#40322] Re: cgi params api — Wakou Aoyama <wakou@...> 2002/05/14

Hi,

[#40377] Re: cgi params api — patrick-may@... (Patrick May) 2002/05/15

Dossy <dossy@panoptic.com> wrote in message news:<20020514172939.GL14145@panoptic.com>...

[#40387] Re: cgi params api — Dossy <dossy@...> 2002/05/15

On 2002.05.15, Patrick May <patrick-may@monmouth.com> wrote:

[#40389] Re: cgi params api — David Alan Black <dblack@...> 2002/05/15

Hello --

[#40390] Re: cgi params api — Dossy <dossy@...> 2002/05/15

On 2002.05.15, David Alan Black <dblack@candle.superlink.net> wrote:

[#40394] Re: cgi params api — David Alan Black <dblack@...> 2002/05/15

Hello --

[#40004] Ruby Conference 2002: Call for Presenters — David Alan Black <dblack@...>

Ruby Conference 2002: Call for Presenters

25 messages 2002/05/10
[#40009] Re: Ruby Conference 2002: Call for Presenters — Jim Menard <jimm@...> 2002/05/10

David Alan Black <dblack@candle.superlink.net> writes:

[#40043] Premature end of script headers — ccos <ccos@...> 2002/05/10

hello,

[#40015] BUG! Platform independent? sockets and select — "Kontra, Gergely" <kgergely@...>

Hi!

12 messages 2002/05/10

[#40099] OT:is software eng an art? — ptkwt@...1.aracnet.com (Phil Tomson)

I signed up for a free seminar that's being held at a grad school nearby

34 messages 2002/05/11

[#40105] Re: OT:is software eng an art? — "Radu M. Obad磚 <whizkid@...>

Mind me... but I feel like stating my oppinions regarding this issue. I

30 messages 2002/05/11

[#40180] What is Ruby for? — "Steve Merrick" <Steve.Merrick@...>

Or even 'Why <insert scripting language of your choice>'? I know it's me

35 messages 2002/05/13

[#40346] ANN: REXML 2.3.3 — Sean Russell <ser@...>

Getting tired of the upgrades yet?

50 messages 2002/05/14
[#40407] Re: ANN: REXML 2.3.3 — Sean Russell <ser@...> 2002/05/15

<posted & mailed>

[#40412] RE: ANN: REXML 2.3.3 — "Rich Kilmer" <rich@...> 2002/05/15

I'll weigh in here...

[#40418] RE: ANN: REXML 2.3.3 — David Alan Black <dblack@...> 2002/05/15

Hi --

[#40426] Re: ANN: REXML 2.3.3 — Bob Hutchison <hutch@...> 2002/05/15

On 5/15/02 12:53 PM, "David Alan Black" <dblack@candle.superlink.net> wrote:

[#40440] Re: ANN: REXML 2.3.3 — Tobias Reif <tobiasreif@...> 2002/05/15

Bob Hutchison schrieb:

[#40397] ANN: Programmierung in Ruby — juergen.katins@... (Juergen Katins)

The translation of *Programming Ruby* by Dave Thomas and Andy Hunt is

31 messages 2002/05/15

[#40525] Metaclasses... — "Hal E. Fulton" <hal9000@...>

Hello, all...

15 messages 2002/05/16

[#40559] what's the calling method name? — Yohanes Santoso <ruby-talk@...>

Hello all,

27 messages 2002/05/17
[#40566] Re: what's the calling method name? — John Carter <john.carter@...> 2002/05/17

On Fri, 17 May 2002, Yohanes Santoso wrote:

[#40577] Re: what's the calling method name? — Yohanes Santoso <ruby-talk@...> 2002/05/17

John Carter <john.carter@tait.co.nz> writes:

[#40647] Re: what's the calling method name? — Yohanes Santoso <ruby-talk@...> 2002/05/18

Yohanes Santoso <ruby-talk@jenny-gnome.dyndns.org> writes:

[#40735] Re: what's the calling method name? — wconrad@... 2002/05/19

On Sat, May 18, 2002 at 06:16:29PM +0900, Yohanes Santoso wrote:

[#40782] Re: what's the calling method name? — nobu.nokada@... 2002/05/20

Hi,

[#40571] Shifting array element & regex on array element — Yohanes Santoso <freeride-devel@...>

In implementing a buffer gap mechanism, I was wondering if there is

10 messages 2002/05/17

[#40635] Ruby regex question — Dossy <dossy@...>

Maybe this is Perl envy, maybe I'm just doing something wrong.

28 messages 2002/05/18
[#40664] Re: Ruby regex question — Mike Stok <mike@...> 2002/05/18

In article <20020518152610.GJ9684@panoptic.com>, Dossy wrote:

[#40673] Re: Ruby regex question — Dossy <dossy@...> 2002/05/18

On 2002.05.19, Mike Stok <mike@stok.co.uk> wrote:

[#40687] RubyEclipse released — "Adam Williams" <awilliams@...>

First release of the highly anticipated (maybe just by me) Ruby IDE. Get it

32 messages 2002/05/19
[#40720] Re: [ANN] RubyEclipse released — Han Holl <han@...> 2002/05/19

Adam Williams wrote:

[#40741] RE: [ANN] RubyEclipse released — "Adam Williams" <awilliams@...> 2002/05/19

Okay. So I probably need to work on some documentation.

[#40723] are there unit tests for cgi.rb? — patrick-may@... (Patrick May)

if so, where could I find them?

27 messages 2002/05/19
[#40806] Re: are there unit tests for cgi.rb? — Tobias Reif <tobiasreif@...> 2002/05/20

Wakou Aoyama wrote:

[#40812] Re: are there unit tests for cgi.rb? — Wakou Aoyama <wakou@...> 2002/05/20

On Tue, May 21, 2002 at 12:27:46AM +0900,

[#40902] method_missing is cool (was: are there unit tests for cgi.rb?) — Ian Macdonald <ian@...> 2002/05/21

On Tue 21 May 2002 at 01:00:22 +0900, Wakou Aoyama wrote:

[#40778] automatic documentation: using tests in addition to / instead of comments — Tobias Reif <tobiasreif@...>

Hi,

40 messages 2002/05/20
[#40788] Re: [RDoc etc] automatic documentation: using tests in addition to / instead of comments — Dave Thomas <Dave@...> 2002/05/20

Tobias Reif <tobiasreif@pinkjuice.com> writes:

[#40826] DBI access to mysql auto_increment record numbers? — Brad Cox <bcox@...> 2002/05/20

How do you get the auto_increment record number for mysql in

[#40887] Re: [RDoc etc] automatic documentation: using tests in addition to / instead of comments — Sean Russell <ser@...> 2002/05/21

Man, how did I miss this thread?

[#40889] Re: [RDoc etc] automatic documentation: using tests in addition to / instead of comments — Paul Brannan <pbrannan@...> 2002/05/21

On Wed, May 22, 2002 at 12:14:05AM +0900, Sean Russell wrote:

[#40875] Memory consumption. — Erik Terpstra <erik@...>

Is there some method that tells me how much memory a certain object

14 messages 2002/05/21

[#40978] Re: Stymied by Ruby's garbage collector — Art Taylor <ataylor@...>

Is there a particular kind or kinds of object being created in huge numbers?

25 messages 2002/05/22
[#40986] Re: Stymied by Ruby's garbage collector — Bob Hutchison <hutch@...> 2002/05/22

On 5/22/02 4:07 PM, "Art Taylor" <ataylor@fortpoint.com> wrote:

[#41085] OS independent scripts, system calls on Windows and Linux — Tobias Reif <tobiasreif@...>

Hi,

19 messages 2002/05/24

[#41102] RE: OS independent scripts, system calls on Windows and Linux — "Morris, Chris" <chris.morris@...>

> All these incompatibility issues are why I want to talk about an RCR.

29 messages 2002/05/24
[#41105] Re: OS independent scripts, system calls on Windows and Linux — Tobias Reif <tobiasreif@...> 2002/05/24

Morris, Chris wrote:

[#41266] Re: OS independent scripts, system calls on Windows and Linux — Dennis Newbold <dennisn@...> 2002/05/28

On Fri, 24 May 2002, Tobias Reif wrote:

[#41352] Infinity (?!) — ptkwt@...1.aracnet.com (Phil Tomson)

I didn't know there was an Infinity value in Ruby, just found it today:

34 messages 2002/05/30

[#41434] Ruby jobs — Tobias Reif <tobiasreif@...>

Hi,

23 messages 2002/05/31
[#41475] RE: Ruby jobs — <james@...> 2002/05/31

>

[#41510] Finding all applications — Chris Gehlker <gehlker@...>

In trying to add drag and drop scripting to RubyStudio and the first task is

40 messages 2002/05/31
[#41561] Re: Finding all applications — Sean Russell <ser@...> 2002/06/01

Jim Menard wrote:

[#41564] Re: Finding all applications — nobu.nokada@... 2002/06/01

Hi,

[#41575] Re: Finding all applications — Chris Gehlker <gehlker@...> 2002/06/02

On 6/1/02 11:33 AM, "nobu.nokada@softhome.net" <nobu.nokada@softhome.net>

[#41576] RE: Finding all applications — "Mike Campbell" <michael_s_campbell@...> 2002/06/02

>> ruby -r find -e 'Find.find("/"){|f| puts f if f[/\.app$/]}'

[#41578] Re: Finding all applications — Chris Gehlker <gehlker@...> 2002/06/02

On 6/1/02 5:20 PM, "Mike Campbell" <michael_s_campbell@yahoo.com> wrote:

[#41579] Re: Finding all applications — Dossy <dossy@...> 2002/06/02

On 2002.06.02, Chris Gehlker <gehlker@fastq.com> wrote:

[#41586] Re: Finding all applications — Chris Gehlker <gehlker@...> 2002/06/02

On 6/1/02 7:44 PM, "Dossy" <dossy@panoptic.com> wrote:

Design question - Internals of a Command class

From: Massimiliano Mirra <listNOSPAM@...>
Date: 2002-05-25 13:14:00 UTC
List: ruby-talk #41140
I am (re)writing a base class that defines a command as issued by a
user on the command line.  I'm pretty sold on an external interface
which is simply:


  Command#exec(argstr)


It is used like this:


  class Join < Command
    ...
  end

  join = Join.new
  join.exec("source1 source2 destination")


I'm not as sure about the internals.  Right now it goes like this:


  def exec(argstr)
    args = parse(argstr)
    results = run(*args)
    out(*results)
  end

  protected

  def parse(argstr)
    return argstr.split
  end

  def run(*args)
    results = args.collect {|arg| "Processed #{arg}"}
    return results
  end

  def out(*results)
    puts results
  end


Each step (parse, run) returns its results instead of setting instance
variables (think of it like an internal contract between methods), so,
when subclassing, one only needs to override the method where the
command specifics happen.


  class Join < Command
    protected

    def parse(argstr)
      sources = argstr.split
      dest = sources.pop

      [sources, dest]
    end
    
    def run(sources, dest)
      File.open(dest, 'w') do |d|
        sources.each do |source|
	  d.write File.open(source) {|s| s.read}
	end
      end

      ["Done."]
    end
  end


Simple, uh?  Yet, I've lost count of how many headaches this ``data
passing'' between those three methods has caused me.  Often I would
return an array that still needs to be seen as an array from the next
step, and would forget to enclose it in [brackets], then the next step
*explodes it and goes SNAFU.  Other times I would pass a single result
and the next step would still try to explode it.  Bugs are also
incredibly difficult to track down.

I tried to put a patch on it with the following:


  def exec(argstr)
    args = parse(argstr).to_a
    results = run(*args).to_a
    out(*results)
  end


Now returning e.g. a string from the run method would not break
anything because it would still arrive like ["string"] in the out
method.  Yet, of course, this leads to more head banging when
returning arrays, not to mention returning hashes (whose to_a has a
completely different meaning) and other classes which may well have a
to_a of their own.

Now, what I'd like to ask to the three or four patient souls who have
managed to read so far, is: given the design requirement that in
subclasses one should override as little as possible (no matter if
this is achieved by an ``internal contract'' as I did or by other
means), do you have any idea of how it can be accomplished in a
fool-proof way that avoids the above head bangings?  (The fool being
I, if there was any doubt left.)

By the way, there is a lot more to this than I simplified here.  For
example, it all lives in a context of a command line input/output
loop, and ability to quickly tie such an interface and set of commands
to a model.  Kind of an interface toolkit, so to speak, only the tools
are commands instead of widgets.  In case I sparkled the interest of
anyone, I will be glad to torture him off list with messy code -- er --
share opinions and ideas.


Massimiliano

In This Thread

Prev Next