Re: RPN maps to basic mathematic expressions nicely
- From: Elizabeth D Rather <eratherXXX@xxxxxxxxx>
- Date: Tue, 20 Nov 2007 13:45:38 -1000
John Passaniti wrote:
kenney@xxxxxxxxxxxxxxxxxxx wrote:Jack tossed the ball to Jill.
Nice and clear and unambiguous, however consider this one.
Time flies like an arrow.
You forgot the next line:
Time flies like an arrow,
fruit flies like a banana.
Exactly. The problem isn't missing punctuation, it's missing context. Context is all important in both human and computer languages.
My claim isn't that one can't construct confusing sentences in English. In fact, if we couldn't write confusing sentences, we wouldn't have puns and poetry.
My claim is that for the vast majority of communication between people experienced with a language, understanding isn't something that requires conscious deconstruction of the sentences. You are reading these words right now without getting out paper and pencil and diagramming my words. It's automatic. You don't think about it.
Exactly. All the fuss about diagramming and tree structures is irrelevant to whether a program is "readable". Folks don't really think that way.
The *same* applies to people experienced with programming languages. If you aren't that familiar with a language like C, this is pure gibberish:
while (char ch = *s++)
blah(ch);
For someone who isn't experienced with C, this isn't readable. They sit there and pick apart the expression, stepping through each element, puzzling through everything. But if you are experienced, this is readable (and idiomatic). You don't see the syntax. You just see the programmer's intent.
Yep, that's precisely the issue. AFAIK all the folks who fuss that "Forth is unreadable" are relatively inexperienced with it. A year or so ago I gave a course in Canada to some folks who had been left with a huge Forth app that they didn't understand and was poorly documented. I offered to come back and help them decipher the source (which was fairly poorly written, IMO), but they said they would work with it for a while and see what they could do on their own. A few months later, I checked with them and they said that my course was all they needed to get them started, and they were doing well reading the source and fixing the problems they needed to fix. So, it was totally unreadable to start, but with familiarity it became accessible.
I agree with your general assertion that one needs to look at what one needs to do, and find a language that does that well. If this involves some learning on one's part, it's probably a good investment. Having made a choice, of course, it's to everyone's advantage to make the code you write in the chosen language as readable as possible ;-)
Cheers,
Elizabeth
--
==================================================
Elizabeth D. Rather (US & Canada) 800-55-FORTH
FORTH Inc. +1 310-491-3356
5155 W. Rosecrans Ave. #1018 Fax: +1 310-978-9454
Hawthorne, CA 90250
http://www.forth.com
"Forth-based products and Services for real-time
applications since 1973."
==================================================
.
- Follow-Ups:
- Re: RPN maps to basic mathematic expressions nicely
- From: John Doty
- Re: RPN maps to basic mathematic expressions nicely
- References:
- Re: RPN maps to basic mathematic expressions nicely
- From: John Passaniti
- Re: RPN maps to basic mathematic expressions nicely
- From: kenney
- Re: RPN maps to basic mathematic expressions nicely
- From: John Passaniti
- Re: RPN maps to basic mathematic expressions nicely
- Prev by Date: Re: RPN maps to basic mathematic expressions nicely
- Next by Date: Re: RPN maps to basic mathematic expressions nicely
- Previous by thread: Re: RPN maps to basic mathematic expressions nicely
- Next by thread: Re: RPN maps to basic mathematic expressions nicely
- Index(es):
Relevant Pages
|