[prev in list] [next in list] [prev in thread] [next in thread] 

List:       ruby-talk
Subject:    Re: Large Ruby Apps ?
From:       Leonardo Eloy <leonardo.eloy () gmail ! com>
Date:       2005-09-30 19:19:02
Message-ID: 7535c11c0509301218p3f0be896l8ccbba901c089c35 () mail ! gmail ! com
[Download RAW message or body]


I agree that some sort of static analysis would allow Ruby codes to more
tightly immune to "bugs" (as Seltzer said).

But the nature of Ruby's dynamism wouldn't allow that any sort of effort in
this area will work properly, as Leo said below, in a Dynamic environment,
run-time verifications can be done via unit and integration testing.

So, for me, It's essential that in a Ruby code variables should be declared
as they're needed, the same applies to "dynamic Class modifications". This
is the dynamic paradigm as Sebesta predicted in his book.

IMHO, static analysis or typing doesn't fit in Ruby's reality, since its
proposal is a different one :).

On 9/30/05, slonik.az@gmail.com <slonik.az@gmail.com> wrote:
>
> Very useful discussion that highlights quite few misconceptions.
> So far in this thread posters were contrasting "old school" static
> type and variable checking versus Ruby's dynamic nature with run-time
> Unit Testing properly done. The truth of the matter is that a
> programmer's life is easier when one has both:
>
> 1: Static (aka compile time) program analysis that captures many
> "human" errors like typos, obvious flow control flaws, etc.
> 2: Dynamic, run-time program verification consisting of unit tests and
> integration tests.
>
> Ruby clearly lacks static analysis tools.
>
> Just my 2 cents
> --Leo--
>
>
> On 9/21/05, Warren Seltzer <warrens@actcom.net.il> wrote:
> > I am coming to Ruby having used the usual list of scripting and C*
> languages. Since Ruby
> > has such powerful programming features, I think it may be used for some
> really large
> > system. My decades long observation of software is that small programs
> that succeed
> > become large programs.
> >
> > But I am concerned about Ruby's suitability for programming in the
> large. First off, the
> > lack of the requirement to declare variables sounds like an invitation
> to programming
> > bugs. It's just too easy to assign something to a misspelling of a
> variable name. Make
> > the same spelling mistake again and you won't even get a warning about
> an undefined
> > variable.
> >
> > For example this 1-line program issues no error:
> >
> > puts @whatever
> >
> > This is a code bug that a statically typed compiler would scream about.
> >
> > -------------------
> >
> > Also: Is anybody doing a port to 64-bit systems?
> >
> > -------------------
> >
> > Also, a history question. With Ruby coming out of Japan, why wasn't
> Unicode support done
> > earlier? You'd think it would be insulated mono-lingual Americans who
> would delay that...
> >
> >
> > Warren Seltzer
> >
> >
> >
> >
>
>


--
Leonardo Eloy, LPIC-1, FCSE, SCPJ


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic