Theiling Online    Sitemap    Conlang Mailing List HQ   

Re: Apologia pro meo responso (was: Two questions about Esperanto)

From:Philippe Caquant <herodote92@...>
Date:Saturday, July 10, 2004, 13:14
--- Ray Brown <ray.brown@...> wrote (...)
I have some remarks about your remarks :

1/ I believe that it was not totally irrelevant from
me to suppose, from your last answer, that in some
limits you took what I said personnally. That's why I
said, carefully "It seems you suppose...". I added a
modal to the predicate "you suppose", meaning, I don't
affirm it, it just looks like it to me. Now, from your
new answer, I can say "it seems I was wrong", and I'm
happy about it. Although just a little later, I read :
"you accuse me of taking it personnally". But I didn't
accuse anybody, I just felt sorry that you seemed to
take it personnally. This was no accusation, it was
regret, or disappointment. "Accusing" is very strong,
it means, I say you're guilty of something. How could
you be guilty of feeling offended ? I should feel
guilty that you felt offended, not you, in sheer
logics. As my favourite author Saint-Exupery said, and
I always quote, "Le langage est source de
malentendus".

2/ About JavaScript (I'm not an expert in it, I'm just
trying to learn it at my lost moments):
- you declare an array like this : MyTab = new Array (
)
- or MyTab = new Array(3), which is very strange,
since later you can add more elements to it without
trouble.
- but you can also declare it like: MyTab =
[elem1,elem2,elem3] ;
and then you refer to an element like this :
MyTab[2] = "hello"
or :
a = MyTab[2]
So I notice that in some cases, you have to use
parentheses ( ), in other cases brackets [ ], and
anyway the element referred as [2] is not the secund,
but the third one, because JavaScript starts with 0
(many, but not all, languages do so). But in the
language I use (Pick 'Basic Gestion' - that's its
French name), I do so:
either :
MAT MYTAB(10)
(in that case, it's called a matrice, and you cannot
change the number of elements later)
or :
MYTAB = ""
(in that case, you just initialize the array as an
empty text variable, and later you use it as a dynamic
array, like:
MYTAB<1> = "hello"
MYTAB<2,3,4> = "world". This is difficult, but not
impossible, to do in JavaScript, although another way.
So I use, either parentheses, either "< >" (how is
this called ?), depending of the goal. In other
languages, you should write "DECLARE MYTAB...", with
various syntaxes. Ibn Cobol, you would say something
like (if I remember):
01 MYTAB
  03 MYLINE OCCURS 3 [DEPENDING ON...]
    05 MYCOL OCCURS... etc
But after all, this is all handling arrays. So why do
we need a dozen of different syntaxes, since the
concept is always the same ?

In JavaScript, you can use "+" for addition just like
for concatenation. It will be interpreted depending of
the actual values of the variables you use, because
there are no types in JavaScript (please excuse me if
I'm wrong). But in Basic Gestion, there are no types
neither, and "+" means addition, and concatenation is
":". In other languages, concatenation will be "++",
or "::", ":+", or ";", or "&", or whatever. How is it
possible that you have to learn a new way to say
"concatenate" in nearly every language, while it is
such a basic and evident function ?

In JavaScript, "or" is "||"'. But in Basic Gestion, it
is "OR". In other languages, it is "|". In JavaScript,
"AND" is "&&". I'm used to "AND". In JavaScript, "not"
is "!". I'm used to "NOT( )", or sometimes to "^". In
JavaScript, "if... then... else..." is : IF
(condition) {instruction1; } else instruction2; }. I'm
used to write:
IF condition1 then
 instruction1
END ELSE
 instruction2
END
(without any semicolons or { } or whatever). But other
languages will use "elsif" and "endif", or whatever. I
believe Unix Shell uses "fi", just like it uses "esac"
to end a "case" (glory to the man who invented this !)
And yet it is always the good "if... then... else". By
the way, the "case" instruction in Javascript is
"switch( )... { case... default... }, while I use :
BEGIN CASE
 CASE cond1
  instr1
 CASE cond2
  instr2
 CASE 1
  default_instr.
END CASE
and other languages do it yet other ways.

OK, let's stop here, there are dozens of examples of
this sort (I spare you the "for... next", among
others). What I meant is, this is really losing
valuable time (and thus, money, for a company) on
nuts, because every time you shift from one language
to another, you'll do syntax mistakes all the time,
while what you should concentrate on is the logics of
the program. The user of the program doesn't give a
damn whether you used brackets or parentheses, or "+"
or ":": what he wants is the program to work, dot.
That's why I say this looks very childish to me. Let's
invent new smart functions, ok, but let's refuse to
learn new exotic syntaxes for basic functions in every
new language. Brother programmers, stand up ! say NO !
Sufficit ! Basta ya ! Such a knowledge is totally
sterile and absurd. I hate to have to mention on my CV
that I know such or such language : what I want to
mention is that I'm able to conceive a program that
will (reasonably) work, not depending of the language.
And yet, 90% of the companies will focus on the
languages you know, and don't care what you will make
out of them. This is totally irrational, and the
people who conceive computer languages are responsible
for that. Their main argument is "if you don't like
it, just use another one". Childish and arrogant. May
they roast in the flames of Hell, amen, dot, semicolon
and two dozen of braces, end-of-program.



=====
Philippe Caquant

"High thoughts must have high language." (Aristophanes, Frogs)


		
__________________________________
Do you Yahoo!?
New and Improved Yahoo! Mail - Send 10MB messages!
http://promotions.yahoo.com/new_mail

Reply

Ray Brown <ray.brown@...>