[#11822] RCR: Input XML support in the base Ruby — Dave Thomas <Dave@...>

15 messages 2001/03/01

[#11960] Not Ruby, for me, for the moment at least — "Michael Kreuzer" <mkreuzer@... (nospam)>

I wrote on this newsgroup last weekend about how I was considering using

11 messages 2001/03/04

[#12023] French RUG ? — "Jerome" <jeromg@...>

Hi fellow rubyers,

16 messages 2001/03/05

[#12103] disassembling and reassembling a hash — raja@... (Raja S.)

Given a hash, h1, will the following always hold?

20 messages 2001/03/06

[#12204] FEATURE REQUEST: 'my' local variables — Leo Razoumov <see_signature@127.0.0.1>

Ruby is, indeed, a very well designed language.

64 messages 2001/03/07
[#12250] Re: FEATURE REQUEST: 'my' local variables — Leo Razoumov <see_signature@127.0.0.1> 2001/03/07

>>>>> "GK" == GOTO Kentaro <gotoken@math.sci.hokudai.ac.jp> writes:

[#12284] Re: FEATURE REQUEST: 'my' local variables — gotoken@... (GOTO Kentaro) 2001/03/08

In message "[ruby-talk:12250] Re: FEATURE REQUEST: 'my' local variables"

[#12289] Re: FEATURE REQUEST: 'my' local variables — matz@... (Yukihiro Matsumoto) 2001/03/08

Hi,

[#12452] Re: FEATURE REQUEST: 'my' local variables — gotoken@... (GOTO Kentaro) 2001/03/12

In message "[ruby-talk:12289] Re: FEATURE REQUEST: 'my' local variables"

[#12553] Re: FEATURE REQUEST: 'my' local variables — Dave Thomas <Dave@...> 2001/03/13

matz@zetabits.com (Yukihiro Matsumoto) writes:

[#12329] Math package — Mathieu Bouchard <matju@...>

18 messages 2001/03/09

[#12330] Haskell goodies, RCR and challenge — Robert Feldt <feldt@...>

Hi,

19 messages 2001/03/09
[#12374] Re: Haskell goodies, RCR and challenge — matz@... (Yukihiro Matsumoto) 2001/03/10

Hi,

[#12349] Can Ruby-GTK display Gif Png or Jpeg files? — Phlip <phlip_cpp@...>

Ruby-san:

20 messages 2001/03/09

[#12444] class variables — Max Ischenko <max@...>

14 messages 2001/03/12

[#12606] Order, chaos, and change requests :) — Dave Thomas <Dave@...>

17 messages 2001/03/14

[#12635] email address regexp — "David Fung" <dfung@...>

i would like to locate probable email addresses in a bunch of text files,

12 messages 2001/03/14

[#12646] police warns you -- Perl is dangerous!! — Leo Razoumov <see_signature@127.0.0.1>

I just read this story on Slashdot

14 messages 2001/03/14
[#12651] Re: police warns you -- Perl is dangerous!! — pete@... (Pete Kernan) 2001/03/14

On 14 Mar 2001 11:46:35 -0800, Leo Razoumov <see_signature@127.0.0.1> wrote:

[#12691] Re: police warns you -- Perl is dangerous!! — "W. Kent Starr" <elderburn@...> 2001/03/15

On Wednesday 14 March 2001 15:40, Pete Kernan wrote:

[#12709] [OFFTOPIC] Re: police warns you -- Perl is dangerous!! — Stephen White <spwhite@...> 2001/03/16

On Fri, 16 Mar 2001, W. Kent Starr wrote:

[#12655] Re: FEATURE REQUEST: 'my' local variables — "Benjamin J. Tilly" <ben_tilly@...>

>===== Original Message From Leo Razoumov <see_signature@127.0.0.1> =====

18 messages 2001/03/14

[#12706] Library packaging — "Nathaniel Talbott" <ntalbott@...>

I have a project that I'm working on that needs to live two different lives,

30 messages 2001/03/16

[#12840] Looking for a decent compression scheme — Dave Thomas <Dave@...>

14 messages 2001/03/19

[#12895] differences between range and array — "Doug Edmunds" <dae_alt3@...>

This code comes from the online code examples for

16 messages 2001/03/20
[#12896] Re: differences between range and array — "Hee-Sob Park" <phasis@...> 2001/03/20

[#12899] Re: differences between range and array — Jim Freeze <jim@...> 2001/03/20

On Tue, 20 Mar 2001, Hee-Sob Park wrote:

[#12960] TextBox ListBox — Ron Jeffries <ronjeffries@...>

Attached is a little Spike that Chet and I are doing. It is a

13 messages 2001/03/20

[#12991] [ANN] Lapidary 0.2.0 — "Nathaniel Talbott" <ntalbott@...>

Well, here's my first major contribution to the Ruby world: Lapidary. It's a

16 messages 2001/03/20

[#13028] mkmf question — Luigi Ballabio <luigi.ballabio@...>

15 messages 2001/03/21

[#13185] Reading a file backwards — "Daniel Berger" <djberg96@...>

Hi all,

21 messages 2001/03/25
[#13197] Re: Reading a file backwards — "Daniel Berger" <djberg96@...> 2001/03/25

> Hi Dan,

[#13203] Re: Reading a file backwards — Mathieu Bouchard <matju@...> 2001/03/25

On Sun, 25 Mar 2001, Daniel Berger wrote:

[#13210] Re: Reading a file backwards — "Daniel Berger" <djberg96@...> 2001/03/25

"Mathieu Bouchard" <matju@sympatico.ca> wrote in message

[#13374] Passing an array to `exec'? — Lloyd Zusman <ljz@...>

I'd like to do the following:

15 messages 2001/03/31

[#13397] Multidimensional arrays and hashes? — Lloyd Zusman <ljz@...>

Is it possible in ruby to make use of constructs that correspond to

14 messages 2001/03/31

[ruby-talk:12809] Re: Library packaging

From: "Colin Sampaleanu" <cas@...>
Date: 2001-03-18 03:04:36 UTC
List: ruby-talk #12809
> -----Original Message-----
> From: dave@thomases.com [mailto:dave@thomases.com]On Behalf Of Dave
> "Colin Sampaleanu" <cas@exis.com> writes:
> > > The implementation of JAR files is one of the many evils of
> > > Java. Every time I get a new Java application, I have to add its JAR
> > > file to my classpath. THis rapidly becomes unmanageable.
> >
> > ... what you are typically supposed to do is start java (the vm)
> > and specify a classpath specific to that application. This can
> be done in a
> > relative fashion. So if I have an app with JARed libs in /lib,
> and some raw
> > .class files starting in /classes, I can have a batch file
> (supplied with
> > the app) in the root of the app structure which can start the
> app, with the
> > following contents:
> > ----
> > java -cp lib/whatever.jar;somethingelse.jar;etc.jar;classes
> > com.whatever.package.structure.StartClass
> > ----
>
> All true, but... with a typical application, I'm bringing in classes
> from all over the place. In the Java world, for example, I may need to
> bring in six Visibroker JAR files, a couple of Oracle JDBC ones, and a
> few of my own. And this is for _every_ application. And because these
> various vendors don't know about each other, it's up to _me_ to link
> these things together.
>
> Contrast that to the current Ruby way (which isn't perfect, but)...
>
> - I install the packages I need.>
> - I run the application.
>
> No messing with wrappers, no going through a bunch of files
> changing paths.
>
> The problem with JAR files is you can't just slap them in a directory
> and have Java find them: you have to nominate each one.
>
> Now, there's an intermediate step I _could_ support. It there was a
> library called (say) 'rdparse', and this library had a library
> structure something like:
>
>    rdparse/parser.rb
>    rdparse/token.rb
>    rdparse/token/unicode.rb
>    rdparse/lex.rb
>
> then I would be convenient to be able to package all these together in
> a single archive, say 'rdparse.rlb'. When Ruby searches for libraries,
> it could assume that within a file called 'xxx.rlb' it could resolve
> requests to load xxx/..., and therefore open it automatically. This
> would cut down on the number of files installed by an application, but
> at the same time would avoid having to list each archive file
> explicitly whenever you run an application.

So this is more about how classes are found and loaded, than about packaging
as individual files or archives. Having auto discovery/standard locations
can help somewhat, and some sort of package management tool can make things
even easier, but the tough question to me is how do you manage visibility
and versioning. If everything is visible to everything else, how do you
manage two version of a library when one piece of code somewhere needs a
version, and another needs a different one? How do you stop one app from
seeing what it shouldn't? Even in java, you can actually dump jars in
$JAVA_HOME/jre/lib/ext and they will be automatically found by the VM and
used by anyone. However a mechanism that simple can't handle managing
different versions, and in practice ends up only being used for standard
system extension. In the end you wind up with each app duplicating code. On
my system, I probably easily a dozen copies of the Xercese parser jar in a
dozen different apps. It's not great in terms of space efficiency, but at
least they don't interfere with each other, and each app is easy to
uninstall without affecting others. I'm sure there has to be a cleaner
solution, but it is not obvious to me.
One possible relatively complicated solution might be to have a centra
package manager, packages registered with the system have versions, and
there is management based on that, e.g. users of packages can specify what
version they need, and new package versions can specify how far backwards
they are compatible. I believe there is stuff somewhat along these lines
being worked on in Debian Linux to handle shared libraries...



In This Thread