Polysemy in programming langs (was: Why does the meaning of words change?)
From: | Ray Brown <ray.brown@...> |
Date: | Sunday, April 18, 2004, 18:45 |
On Saturday, April 17, 2004, at 09:26 PM, Philippe Caquant wrote:
[snip]
> The same with instructions like: A = B, which in
> reality mean "copy B to A".
Yep - copying the value of location B into location A is, of course, what
goes on in the computer & is probably how one would think of it at a low
level; in high level programming it's rather:
"variable A is assigned the value of variable B."
> Even more disturbing when
> "=" also really means "equals", like in "IF A = B
> THEN..."
If you must use such illogical programming languages... :)
Yes, I fully agree. Such sloppy logic does nothing to help students who
find both programming and logical thought difficult. Personally, I avoid
any such language if I possibly can.
The more sensible languages (e.g. the Pascal family, the C family & Java)
do use different symbols for assignment and equality. Polysemy is, I think,
normally avoided in engelangs (with the notable exception of Lin) and
IMHO should have no place in that subset of engelangs known as programming
languages
Ray
===============================================
http://home.freeuk.com/ray.brown
ray.brown@freeuk.com (home)
raymond.brown@kingston-college.ac.uk (work)
===============================================
"A mind which thinks at its own expense will always
interfere with language." J.G. Hamann, 1760
Replies