[REBOL] appreciation of rebol
From: kevin_kelleher:non:hp at: 16-Mar-2001 12:55
First, thanks to those who responded to my "substring" question.
You solved my problem.
Secondly,
I'm writing to express my appreciation for the Rebol language.
For the past three years I engaged (when I had the time) in
a search for a "language I could fall in love with." I found the
best formulation for the way I was felt in Keith Waclena's
My Programming Language Crisis
at
http://www.lib.uchicago.edu/keith/crisis/
I can do pretty much whatever I need in C, C++, or Perl.
I am very good at unix shell scripting, and have some
familiarity with Java. But I didn't like them, really.
I wanted something a little more *intuitive* and was
bothered by the fact that most languages (like Perl, for
example) required me to pull in special libraries to do
some tasks, and none integrated GUI-building in any
elegant way.
I looked at just about every free language out there;
played with Python, Ruby, Tcl, Icon, and others.
It took some time to get a grip on the various families of
languages: logical, functional, etc., and had gotten to the
point that I thought my best course of action would be
to learn Scheme, Prolog, Haskell, and Squeak (a version
of Smalltalk). I still think that would be a good idea,
but after putting in some time in that direction, I
filed the idea under the "some day" category.
The problem was, I wasn't getting any return on my efforts.
It takes time to learn any language, and you cannot learn
a language at all well unless you WORK in it, make things
with it, use it to solve some real problem.
I have a tool that now runs as a combination of Korn shell and
Perl scripts. It fetches a list of web pages and extracts only what's
new to me (or the headlines, depending on type of page), and
constructs a single page from the pieces. Some of the pages
have altered their format; the tool needs some adjustments
and improvements, and it would be more convenient if it
ran on my PC rather the unix box.
So as I studied the four languages I was looking to get to the
point when I would know enough to start programming, but
it was a long time coming. I could see that one command does this,
another command does that, but how it all fit together was another
thing. I wanted to know: "How do I open a file? How do I fetch a
page from the web? How do I parse HTML and (generally)
manipulate strings?"
Yes, it takes time to learn a language, and usually you have to
start with the basics. Forget about I/O, GUIs, networking.
Well, I've known about Rebol ever since it came out, have
downloaded it several times and looked at the documentation,
but resisted it, I don't know why.
Then I was looking for a Wiki Wiki implementation to use, and
found Vanilla (http://www.langreiter.com/vanilla) and was
amazed at how compact the code was. (I didn't end up using
it, but only because the Wiki-need passed.)
It finally hit me - Rebol was the language I was looking for.
It's a scripting language, has GUI-creation built in, doesn't
require separate libraries or modules to do useful work,
incorporates network commands transparently, and is
terse yet comprehensible. The size of the command-set is
fairly small, but it is quite powerful. I was looking for a language
for my everyday tasks, and this is the one.
Right away I got to work rewriting that webpage-fetching tool.
I'm surprised at how quickly I'm creating it in Rebol, but I am
more surprised at the way I'm adding functionality.
I didn't expect to do that; I didn't think that Rebol's string parsing
could match that done by sed and Perl, but I very quickly knocked
out a function to extract any table from a web page, and that
is an idea that I didn't even have in the original version of the tool.
So, thanks to you folks at Rebol, and I hope to see Rebol more widely
known and more widely used. I will certainly be recommending it
to my friends and colleages.
Kevin Kelleher
Disclaimer: The remarks in this email are the personal opinions of
this writer and in no way reflect the policies or opinions of Hewlett
Packard. The present writer is not an employee or spokesperson for
Hewlett Packard.