[Tfug] Language choices
Chad Woolley
thewoolleyman at gmail.com
Sun Oct 29 20:36:45 MST 2006
Yeah, with that info I don't think Ruby is for you, there are several
criteria below I don't think it would meet well (but it might come
close on some)
However, as far as readability, I think that it is probably the most
readable language I've seen. If there were any language that you
could read to a secretary and have her understand it, Ruby would be
it.
Actually, I was talking with a guy at RubyConf, and he related a story
about his usage of Rspec [1], which is a tool to write extremely
readable executable specifications (tests) in Ruby. It's based on the
concepts of Behavior Driven Development.
He left his rspec code up on his screen, and the (non-technical)
business analyst walked by. Just by reading his specs, she realized
that he was not implementing the business logic correctly, and told
him about it. That's as good an anecdote as any I've heard for
language readability. It is through the flexibility and dynamic
nature of Ruby that a readable tool liek Rspec is possible.
[1] http://rspec.rubyforge.org/
On 10/27/06, Bexley Hall <bexley401 at yahoo.com> wrote:
> Hi, Chad,
>
> --- Chad Woolley <thewoolleyman at gmail.com> wrote:
>
> > I wrote a ton of REXX on the mainframe with I worked
> > at IBM. It was a nice little procedural scripting
> > language (I never used Object REXX).
> > I'm glad I don't use it anymore. It's main
> > shortcoming would be that it is an obscure language
> > created and primarily used by IBM, with little 3rd
> > party library support.
>
> Not a valid criteria for me :> As long as the
> language is consistent, relatively easy for others
> to learn, has bounded execution behaviour, etc.
>
> > If you are going to script anything in the 21st
> > century, I'd strongly recommend Ruby, unless you
> > are on some platform that doesn't support it - and
> > most should, if not natively then it's easy to build
> > from source.
>
> I don't work in a desktop environment. So, what's
> considered "easy" to support is often not as simple
> to say. Likewise, many popular/modern languages
> draw heavily on other libraries on a system, etc.
>
> For example, pull the disk out of your <blank>
> machine,
> boot your <blank> kernel via TFTP. Load whatever
> you need for Ruby and some <token> application.
> Then, bring the network interface *down* (i.e. you
> can't access anything else on a remote file server,
> no disk to swap to, etc.).
>
> *Now*, what's your resource footprint look like
> while your <token> application is running? Can
> you do this in 1G of RAM? 512M? 256MB? 64M?
> 16M?? How about *4*M?
>
> Sure, I have more than 4M available. But, that
> memory has to support *lots* of applications
> running concurrently -- plus their "disk images",
> etc.
>
> > Ruby is clean, concise, well-designed, and best of
> > all, object-oriented from the ground up. It
> supports
> > blocks and closures. It's designed to follow the
> > principle of least surprise, and it reads
> > very easily in english-like syntax (even though it
> > was originally written by guy from Japan).
>
> *Most* OO langages "read" terribly! Lots of
> superfluous punctuation mandated by the object
> model (e.g., object.method). And, all sorts of
> oddball operators (e.g., &, ->, @, etc.).
>
> Could you read your code to a *secretary* (non
> computer literate) easily?
>
> E.g., if you discount parens, LISP is quite readable
> (though if you discard the parens, what the hell
> is left?? :> ). OTOH, C++, Java, etc. have tons
> of punctuation sprinkled throughout. It seems
> like newer languages rely heavily on punctuation.
> (contrast with something like COBOL :> )
>
> > Theres a ton of 3rd-party libraries to
> > support it, and an easy mechanism to auto-download
> > them (RubyGems).
>
> Not important for me. :> Unless, perhaps, they have
> libraries to control motors, scan barcodes, etc. :)
>
> > You get the best of all worlds.
>
> What about support for variable precision math?
> Are there hooks for IPC built into the language?
> (e.g., Limbo, REXX, etc.) Or, does it rely on
> library support for this?
>
> I'll have to look through the ruby package on my
> NBSD box to see if there are "features" I could
> discard to tweek the syntax -- or, if it is
> hopelessly tied to the language definition
> itself. Maybe I'll run my proposed test (to
> check resource footprint). I'm not very
> optimistic... :<
>
> Thanks!
> --don
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam? Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>
> _______________________________________________
> Tucson Free Unix Group - tfug at tfug.org
> Subscription Options:
> http://www.tfug.org/mailman/listinfo/tfug_tfug.org
>
More information about the tfug
mailing list