[#89088] More questions about =~ — GGarramuno@... (GGarramuno)

irb(main):006:1* class String

14 messages 2004/01/01

[#89119] Loop/Iterator questions — GGarramuno@... (GGarramuno)

1) Is there anything like Perl's continue block available? This is

15 messages 2004/01/02

[#89189] Best way to send mail in ruby — Bauduin Raphael <rb@...>

Hi,

11 messages 2004/01/03

[#89193] Simple Ruby DB apps/programs ... — Useko Netsumi <usenets@...>

I was wondering if there are some example of small Ruby(1.8.1) Database

14 messages 2004/01/03

[#89261] class Time doesn't pass year 2038? — Jean-Baptiste <temuphaey0@...>

15 messages 2004/01/05

[#89339] Compression (besides Huffman) and Ruby — "Josef 'Jupp' SCHUGT" <jupp@...>

Hi!

14 messages 2004/01/07

[#89367] Database applications and OOness — Tim Bates <tim@...>

People,

63 messages 2004/01/07
[#89455] Re: Database applications and OOness — "dhtapp" <dhtapp@...> 2004/01/08

I've been watching this thread with a great deal of interest. I'm

[#89456] block delimiting — Pete Yadlowsky <pmy@...> 2004/01/08

[#89465] Re: block delimiting — Austin Ziegler <austin@...> 2004/01/08

On Fri, 9 Jan 2004 04:33:15 +0900, Pete y wrote:

[#89453] ruby 1.8.1 windows installer — KONTRA Gergely <kgergely@...>

Hi!

26 messages 2004/01/08
[#89716] Re: ruby 1.8.1 windows installer — intc_ctor@... (Phil Tomson) 2004/01/12

>

[#89860] Re: ruby 1.8.1 windows installer — Alan Davies <NOSPAMcs96and@...> 2004/01/14

> Since the first edition of the Pickaxe book didn't exactly fly off the

[#89460] Re: block delimiting — "Mike Wilson" <wmwilson01@...>

21 messages 2004/01/08

[#89590] regex to NOT match? — Ruby Baby <ruby@...>

Sorry it seems like the smallest thing, but I'm stuck on this.

16 messages 2004/01/10

[#89611] Converting a string to an array of tokens — "John W. Long" <ws@...>

Is there a fast way to convert a string into a list of tokens?

17 messages 2004/01/11

[#89672] faster integer arithmetics & arbitrary precision floating number — David Garamond <lists@...6.isreserved.com>

1. Is there a way in Ruby to speed up 32bit integer arithmetics (only

43 messages 2004/01/12
[#89686] Re: faster integer arithmetics & arbitrary precision floating number — Ara.T.Howard@... 2004/01/12

On Tue, 13 Jan 2004, David Garamond wrote:

[#89709] Re: faster integer arithmetics & arbitrary precision floating number — Charles Mills <boson@...> 2004/01/12

What abouts Rubys design would make integer arithmetic slower than integer

[#89710] Re: faster integer arithmetics & arbitrary precision floating number — Dave Thomas <dave@...> 2004/01/12

[#89711] Re: faster integer arithmetics & arbitrary precision floating number — Charles Mills <boson@...> 2004/01/12

On Tue, 13 Jan 2004, Dave Thomas wrote:

[#89718] Getting the tail of a list? — Carsten Eckelmann <careck@...42.com>

Hi everybody,

19 messages 2004/01/12

[#89796] Ruby OS mentioned on /. — intc_ctor@... (Phil Tomson)

http://developers.slashdot.org/developers/04/01/13/0123250.shtml?tid=185&tid=190

20 messages 2004/01/13
[#89805] Re: Ruby OS mentioned on /. — Paul William <maillist@...> 2004/01/13

./ normally does not have vaporware... are a bunch of ruby (a very high

[#89806] Re: Ruby OS mentioned on /. — "Zach Dennis" <zdennis@...> 2004/01/13

Somehow i have this strange feeling that not all ruby peeps are strictly

[#89975] drb, firewall, ssh tunneling, and yield — Joel VanderWerf <vjoel@...>

14 messages 2004/01/16
[#89976] Re: drb, firewall, ssh tunneling, and yield — Nathaniel Talbott <nathaniel@...> 2004/01/16

On Jan 15, 2004, at 19:10, Joel VanderWerf wrote:

[#90013] Fighting Ruby's bad fame — gabriele renzi <surrender_it@...1.vip.ukl.yahoo.com>

Hi gurus and nubys,

42 messages 2004/01/16
[#90097] Re: Fighting Ruby's bad fame — ptkwt@... (Phil Tomson) 2004/01/18

In article <af53b0ba.0401171921.7cf9b9b7@posting.google.com>,

[#90023] Installing a program Unix-like — Malte Milatz <malteDELETETHIS@...>

Users of Linux, FreeBSD etc. are used to downloading an archive,

13 messages 2004/01/16

[#90077] long expression syntax — rick.hu@... (Rick Hu)

why do I get a syntax error for

13 messages 2004/01/17

[#90086] is Ruby the right language for these projects? — Ruby Baby <ruby@...>

Please forgive my self-centered question. I've been learning all about Ruby

16 messages 2004/01/18

[#90139] segfaults on mandrake... — Ferenc Engard <ferenc@...>

Hello,

16 messages 2004/01/18

[#90200] regex help — Chris Morris <chrismo@...>

I need a re such that:

18 messages 2004/01/19

[#90228] Re: New to Python: my impression v. Perl/Ruby — ptkwt@... (Phil Tomson)

In article <mailman.493.1074484056.12720.python-list@python.org>,

36 messages 2004/01/20
[#90292] Re: New to Python: my impression v. Perl/Ruby — Ville Vainio <ville.spamstermeister.vainio@...> 2004/01/20

>>>>> "Phil" == Phil Tomson <ptkwt@aracnet.com> writes:

[#90294] Re: New to Python: my impression v. Perl/Ruby — "Zach Dennis" <zdennis@...> 2004/01/20

Ville>Though "sending messages" to int literals is a syntax error.

[#90332] Re: New to Python: my impression v. Perl/Ruby — GGarramuno@... (GGarramuno) 2004/01/21

"Zach Dennis" <zdennis@mktec.com> wrote in message news:<AKEKIKLMCFIHPEAHKAAICEOHHFAA.zdennis@mktec.com>...

[#90333] Re: New to Python: my impression v. Perl/Ruby — Gregory Millam <walker@...> 2004/01/21

Received: Wed, 21 Jan 2004 16:59:59 +0900

[#90317] Re: Proposal for programming language of the year — "Volkmann, Mark" <Mark.Volkmann@...>

I think one of the main points of learning a new language each year is that

18 messages 2004/01/21

[#90354] Modules as namespace — gm@... (George Moschovitis)

Hello everyone,

16 messages 2004/01/21

[#90405] Very basic Ruby docs/books/tutorial? — Robert Feldt <feldt@...>

Hello,

12 messages 2004/01/22

[#90472] Ruby/Extensions v0.3 released — Gavin Sinclair <gsinclair@...>

A new version of Ruby/Extensions, a suite of useful methods added to

17 messages 2004/01/23

[#90505] Why is to_a going to be obsolete? — Patrick Bennett <patrick.bennett@...>

I find it immensely useful when dealing with arrays to be able to

25 messages 2004/01/23
[#90507] Re: Why is to_a going to be obsolete? — Gennady <gfb@...> 2004/01/23

Patrick Bennett wrote:

[#90510] Re: Why is to_a going to be obsolete? — Patrick Bennett <patrick.bennett@...> 2004/01/23

Hmmm, thanks, but it's a bit 'non-obvious' to casual Ruby programmers

[#90512] Re: Why is to_a going to be obsolete? — Gennady <gfb@...> 2004/01/23

[#90524] Re: Why is to_a going to be obsolete? — "T. Onoma" <transami@...> 2004/01/23

On Friday 23 January 2004 06:43 pm, Gennady wrote:

[#90598] perl bug File::Basename and Perl's nature — xah@... (Xah Lee)

Just bumped into another irresponsibility in perl.

19 messages 2004/01/25

[#90667] ruby-math and "why is ** not abelian?" — vanjac12@... (Van Jacques)

I was reading the 1st thread in the ruby-math discussion at

11 messages 2004/01/26

[#90750] choosing ruby? — Piergiuliano Bossi <p_bossi_AGAINST_SPAM@...>

We are on the way to start a new project, a web application with a bunch

20 messages 2004/01/27

[#90756] Editor — Safran von Twesla <me@...>

Hi,

20 messages 2004/01/27

[#90770] newbee question about "missing" hash methods +, += and << — benny <linux@...>

Hi,

25 messages 2004/01/27

[#90913] vimrc for Ruby or rubytidy — Theodore Knab <tjk@...>

Does someone have a '.vimrc' file they will share

17 messages 2004/01/29
[#90914] Re: vimrc for Ruby or rubytidy — "Gavin Sinclair" <gsinclair@...> 2004/01/29

> Does someone have a '.vimrc' file they will share

[#90971] time comparison — tony summerfelt <snowzone5@...>

i want to parse and trim a log file. the date format log file looks like:

13 messages 2004/01/29

[#91005] Ruby and Perl Integration — "John W. Long" <ws@...>

All this talk about RJNI has gotten me thinking. Has anyone attempted to

17 messages 2004/01/30
[#91007] Re: Ruby and Perl Integration — Thomas Adam <thomas_adam16@...> 2004/01/30

--- "John W. Long" <ws@johnwlong.com> wrote:

[#91056] principle of most suprise — tony summerfelt <snowzone5@...>

gah, ruby is doing it to me again:

31 messages 2004/01/30

[#91071] Accesing to private attributes — "Imobach =?iso-8859-15?q?Gonz=E1lez_Sosa?=" <imodev@...>

Hi all,

14 messages 2004/01/30

[#91088] flip flop operator and assignment — ptkwt@... (Phil Tomson)

I'm working on the pattern matching section for

25 messages 2004/01/31

[#91089] No difference between .. and ... flip/flop operators? — ptkwt@... (Phil Tomson)

50 messages 2004/01/31

[#91099] Ruby 1.8.1 REXML performance — Steven Jenkins <steven.jenkins@...>

I have a script that uses REXML to stream parse an XML file and load a

27 messages 2004/01/31

[#91104] graphics lib? — Alwin Blok <alwinblok@...>

Hello,

38 messages 2004/01/31
[#91262] Re: graphics lib? — Simon Strandgaard <neoneye@...> 2004/02/02

On Sun, 01 Feb 2004 16:18:50 -0600, Charles Comstock wrote:

[#91362] Re: graphics lib? — Charles Comstock <cc1@...> 2004/02/03

Simon Strandgaard wrote:

Re: Database applications and OOness

From: Ara.T.Howard@...
Date: 2004-01-12 18:11:44 UTC
List: ruby-talk #89690
On Tue, 13 Jan 2004, Weirich, James wrote:

> Date: Tue, 13 Jan 2004 00:24:12 +0900
> From: "Weirich, James" <James.Weirich@FMR.COM>
> Newsgroups: comp.lang.ruby
> Subject: Re: Database applications and OOness
> 
> > right. but every dbms binding has a different basic api. Why this useless
> > duplication?  (Probably that may be useful, and I'm just too stupid to
> > understand why)

(to above OP)

consider how a F1 car would drive if it were made to have the same 'interface'
as a 1970 volkswagon beetle...

the problem with this approach is that you are stuck with

  a) a 'least common denominator' type approach, and lose the feature that
  distinguish some db's as better for certain types of things that others

  b) an api which conditionally offers some calls, leaving them empty for some
  dbs.  IMHO this is plain confusing as only a tiny, tiny, tiny bit better
  than simply learning the appropriate apis

in otherwords, if your 'car' has 7 gears and afterburners - you need an 'api'
to access them!  if your car is an automatic, you should not have a 'clutch'
method...

> I'll try to explain some of the rationale behind the DBI implementation.
> First, let's examine the layers involved.
> 
> The DBMS API layers is provided by the DBMS itself.  This is generally a C
> language API that must be adapted to Ruby through a library.
> Ruby-postgres-0.7.1 is such a library.  It adapts the PostgreSQL C API to
> Ruby.  There are similar libraries for other DBMS. Sometimes the API  is
> wrapped in a thin OO veneer.  Sometimes additional functionality beyond the
> C API is provided. 
> 
> The DBD level uses the native API to provide a standard DB protocal to the
> rest of the DBI code.  If a Ruby-callable version of a native API didn't
> exist, then the DBD would have to be written (at least in part) in C.
> 
> Finally, the DBI level contains the common code used to implement the
> abstract DBI interface.
> 
> Can a user use the DBD directly and skip a level?  Yes, but I don't think
> they will find the DBD interface nearly as nice to use as the DBI interface.
> 
> Could the DBD and native interfaces be merged?  Yes.  In fact, I would
> encourage those who provide a native DBMS interface to consider providing a
> DBD interface as well.  This would be similar to the Java world where it is
> generally the responsibility of the DBMS vender to supply the JDBC drivers.
> 
> Could the DBI and DBD levels be merged?  Yes, but that would require each
> DBD to duplicate a lot of code that exists in the DBI, obviously not a good
> thing.  Also, a merged DBI/DBD level would be much more difficult for a
> vender to supply than a relatively straight-forward DBD library.  I think it
> remains a good idea to keep the DBD and DBI separate.
> 
> If you are into design patterns, it is worth noting that the DBI
> implementation is a simplified version of the Bridge Pattern (simplified in
> that we don't normally subclass any of the DBI classes).  It also bears a
> strong resemblance to the Strategy Pattern.
> 
> I hope this helps explain some of the rational behind the DBI
> implementation. 

i think the strength of patterns stems from the fact that they abstract
difficult things into managable chunks in a proven way.  i have always felt
that database usage is not an appropriate application of such abstractions:
databases are simply not that difficult to use and it is essentially only
certain aspects of them which can be abstracted.  several people i work with
swear by perl/ruby/java dbi/jdbc.  they seem to be constantly struggling with
even the most basic database operations and tracking sublte bugs stemming from
the 'little' differences in db implimentations.  to convice yourself of this
just do a search of dbi vs., say, postgres bugs/usage problems on c.l.r.  or,
ask yourself why all the vendors cannot simply abide by the SQL standards?  if
they cannot seems to make it work - perhaps there is a reason?

in addition, i think that few projects place the proper weight on database
design - pushing far too much logic into the application - and abstractions
such as dbi encourage this type of thinking (or lack of): databases are all
the same right?.  IMHO one really needs to sit down and consider a design
quite carefully in the context of the available db options - at that point one
will clearly emerge as the 'better' db in most situations due to feature 'x';
in otherwords, it is the _differences_ between dbs that make them valuable
(consider postgresql vs. sqlite vs. pstore) - not the similarities.

i know of projects which have chosen to utilize mysql because: 'it is fast'.
then proceed to access it via layer upon layer of apis - doing nothing but
simple searches.  the funny thing is, the application really does need to be
fast - the not so funny thing is that by simply cutting to the chase and using
berkley db directly (which is all mysql is doing in this case) enormous speed
gains could be realized.  of course, this seems to too 'hard' since one need
learn a new api - but when really nice interfaces like guy's bdb interface
exist it is simply not all that tough:

  db[large_object.key] = Marshal.dump large_object

i suppose what i am saying is that i generally oppose trying to cram dbs into
the same box.  i feel that, by giving the impression that all dbs are that
same, abstractions like jdbc encourage bad design and bad programming.

not trying to start a flame war, just my 2 cents.  ;-)

-a
-- 

ATTN: please update your address books with address below!

===============================================================================
| EMAIL   :: Ara [dot] T [dot] Howard [at] noaa [dot] gov
| PHONE   :: 303.497.6469
| ADDRESS :: E/GC2 325 Broadway, Boulder, CO 80305-3328
| STP     :: http://www.ngdc.noaa.gov/stp/
| NGDC    :: http://www.ngdc.noaa.gov/
| NESDIS  :: http://www.nesdis.noaa.gov/
| NOAA    :: http://www.noaa.gov/
| US DOC  :: http://www.commerce.gov/
|
| The difference between art and science is that science is what we
| understand well enough to explain to a computer.  
| Art is everything else.  
|   -- Donald Knuth, "Discover"
|
| /bin/sh -c 'for l in ruby perl;do $l -e "print \"\x3a\x2d\x29\x0a\"";done' 
===============================================================================


In This Thread