EcmaScript, ECMAScript, or JavaScript ?

D

dhtml

I made a change to the FAQ of javascript to EcmaScript.

I got some feedback that the newsgroup is CLJ and the language is
commonly referred to as JavaScript. Therefore, the word in the FAQ
should be JavaScript.

So I'm asking: what should I use in the FAQ?

Technically, 'JavaScript' is Mozilla's implementation of Ecma-262.

So - JavaScript or ECMAScript.

The second question is: where ECMAScript is used, should it be
'ECMAScript' or 'EcmaScript'?

Brendan always calls it "Ecma" and "Ecma TC3". Others do, too.

Technically, 'ECMAScript' is more official, though it's a little easier
to read and type camel case than all-caps.

What do you want in the FAQ: JavaScript, EcmaScript, or ECMAScript?

Garrett
 
R

RobG

I made a change to the FAQ of javascript to EcmaScript.

I got some feedback that the newsgroup is CLJ and the language is
commonly referred to as JavaScript.  Therefore, the word in the FAQ
should be JavaScript.

So I'm asking: what should I use in the FAQ?

Technically, 'JavaScript' is Mozilla's implementation of Ecma-262.

So - JavaScript or ECMAScript.

The second question is: where ECMAScript is used, should it be
'ECMAScript' or 'EcmaScript'?

Brendan always calls it "Ecma" and "Ecma TC3". Others do, too.

Technically, 'ECMAScript' is more official, though it's a little easier
to read and type camel case than all-caps.

What do you want in the FAQ: JavaScript, EcmaScript, or ECMAScript?

The term ECMAScript should be used whenever referring to the
underlying language because that is an easily recognisable part of its
official name. EcmaScript is a bit "skript-kiddy" to me, even if it's
been adopted by its inventor.

JavaScript (capitalised) should be used only when referring
specifically to Netscape’s implementation of ECMAScript in their
browser. The Mozilla web site states that SpiderMonkey “Mozilla's C
implementation of JavaScript” and Rhino is their Java implementation.
It’s worth noting that Sun owns the JavaScript trademark, though
whether that is important or not is moot.

It is my understanding that the term javascript (no capitalisation) is
generally used to mean ECMAScript as implemented in a browser and
includes all the other host environment stuff as well (e.g. W3C DOM
and proprietary bits). If a comment refers to a specific
implementation, it should mention it by name (JScript, SpiderMonkey,
SquirrelFish and so on).

It is important that the FAQ points out the difference between
ECMAScript and its implementation in different environments.
 
L

Lasse Reichstein Nielsen

dhtml said:
What do you want in the FAQ: JavaScript, EcmaScript, or ECMAScript?

Personally, I use "Javascript" about the collection of languages that
are ECMAScript compatible (anything that triggers off the (unofficial)
MIME type "text/javascript").
This includes JavaScript(TM), JScript(TM) and other unnamed
implementations (e.g., in Opera, Safari, Chrome, etc.).

It's no more incorrect than any of the other :)
/L
 
J

Jorge

Personally, I use "Javascript" about the collection of languages that
are ECMAScript compatible (anything that triggers off the (unofficial)
MIME type "text/javascript").
This includes JavaScript(TM), JScript(TM) and other unnamed
implementations (e.g., in Opera, Safari, Chrome, etc.).

Safari's JS interpreter is called, properly enough, JavaScriptCore.
It's no more incorrect than any of the other :)

You're not alone, most books are titled [something]+"JavaScript"+
[something]: i.e. "JavaScript: The good parts", not "ECMAScript: The
good parts" :)
 
D

Dr J R Stockton

Personally, I use "Javascript" about the collection of languages that
are ECMAScript compatible (anything that triggers off the (unofficial)
MIME type "text/javascript").
This includes JavaScript(TM), JScript(TM) and other unnamed
implementations (e.g., in Opera, Safari, Chrome, etc.).

Safari's JS interpreter is called, properly enough, JavaScriptCore.
It's no more incorrect than any of the other :)

You're not alone, most books are titled [something]+"JavaScript"+
[something]: i.e. "JavaScript: The good parts", not "ECMAScript: The
good parts"  :)

One should be guided firstly by what ISO/IEC 16262 uses internally,
secondarily by what ECMA 262 uses internally, thirdly by what
Wikipedia uses (because inappropriate notation will have been changed
there); but in the case of single-source products use what the source
uses.

That means ECMAScript, JavaScript, JScript.

Since the language is so widely known as JavaScript, and the newsgroup
is CLJ, the general name used in the FAQ should be JavaScript rather
than ECMAScript. Remember that the FAQ is intended to be read by
ordinary people.

Remember also that one should, in principle, not code in full
ECMAScript. Instead, one should code in that subset of ECMAScript
which one believes to be properly supported in all target executing
agents. That means, for example, not using toFixed if certain
arguments are possible. Better, then, not to use ECMAScript except
when referring to the standard.

Intranet authors can code in a superset of that subset, adding the use
of non-ECMA features supported on all relevant systems.

One might argue for using JavaScript for what is compliant with the
standards, and Javascript or javascript more generally. But it would
be difficult to sustain that reliable, and readers would not remember
the significance.
 
R

Richard Cornford

I made a change to the FAQ of javascript to EcmaScript.

And how is that supposed to help?
I got some feedback that the newsgroup is CLJ and the
language is commonly referred to as JavaScript. Therefore,
the word in the FAQ should be JavaScript.

Absolutely not. It is necessarily to be able to differentiate between
the ECMAScript implementation that has a name with that trademark
capitalisation and the general category of ECMAScript implementations.
As the latter is called "javascript" (with or without capitalisation)
but the former is named "JavaScript" (with the specific
capitalisation) it makes most sense to differentiate between the two
by employing alternative capitalisation. This has been discussed
before (and at length) and the wording employed in the FAQ represented
the consensus at the time.
So I'm asking: what should I use in the FAQ?
No.

Technically, 'JavaScript' is Mozilla's implementation of
Ecma-262.

And a Trademark name, as is "JScript".
So - JavaScript or ECMAScript.
Neither.

The second question is: where ECMAScript is used, should it be
'ECMAScript' or 'EcmaScript'?
ECMAScript.

Brendan always calls it "Ecma" and "Ecma TC3". Others do, too.

Always? URL (or any evidence substantiating that claim)?
Technically, 'ECMAScript' is more official, though it's a
little easier to read and type camel case than all-caps.

Typing ease is hardly an excuse, but use "javascript" (capitalised if
it appears at the beginning of a sentence) and it is likely that
readers will sufficiently understand what is being referred to.
What do you want in the FAQ: JavaScript, EcmaScript,
or ECMAScript?

Javascript.

Richard.
 
C

Conrad Lender

One should be guided firstly by what ISO/IEC 16262 uses internally,
secondarily by what ECMA 262 uses internally,

Is there any difference between the two? I've never bothered with the
ISO specs, because I consider ECMA-262 to be normative, and because ISO
usually charges quite a bit for a copy of their specs.
thirdly by what Wikipedia uses (because inappropriate notation will
have been changed there); but in the case of single-source products
use what the source uses.

Wikipedia? As useful as it can be at times, I would very much ignore
what Wikipedia has to say about this topic. They're not an authority.
Since the language is so widely known as JavaScript, and the newsgroup
is CLJ, the general name used in the FAQ should be JavaScript rather
than ECMAScript. Remember that the FAQ is intended to be read by
ordinary people. ...
Better, then, not to use ECMAScript except when referring to the
standard.

Agree about that. JavaScript is what it's generally know as, and the
distinction between the language standard and the names of the various
implementations is less important than letting people know what we're
talking about. The FAQ should explain the definitions (it does so
already, in part), and why "JavaScript" is used in the rest of the document.

Also, the MIME type is usually stated as "text/javascript", not
"text/ecmascript" or "text/name-of-implementation-script".


- Conrad
 
T

Thomas 'PointedEars' Lahn

Conrad said:
[...]
Better, then, not to use ECMAScript except when referring to the
standard.

Agree about that. JavaScript is what it's generally know as, and the
distinction between the language standard and the names of the various
implementations is less important than letting people know what we're
talking about.

Non sequitur. Those differences have become one important
reason why we are discussing here in the first place.

<http://PointedEars.de/es-matrix/> (new revision still construction)


PointedEars
 
C

Conrad Lender

Typing ease is hardly an excuse, but use "javascript" (capitalised if
it appears at the beginning of a sentence) and it is likely that
readers will sufficiently understand what is being referred to.


Javascript.

With all due respect, but if "JavaScript" is a trademark, then
"Javascript" is protected as well (just like "ipod" is protected,
although the trademark is "iPod"). The trademarked spelling is camel
cased, but legally that does not give anybody the right to use the
"Javascript" spelling freely without infringing on the trademark. If
"Javascript" has become sufficiently widely used, and _not_ only in
connection with the trademarked implementation, then the trademark could
(if anybody cared enough) be voided, as it will no longer be unique
enough, and hence unenforcable.

Disclaimer: I've been working with patent attorneys for the last 5+
years, and while this definitely does not make me an expert in any way,
it did give me a pretty good general idea about the legal situation.

My point is that it would be unwise to make an important distinction
between JavaScript, Javascript, and javascript, just based on the
capitalization. That would be extremely confusing, especially for
newcomers. Writing it all-lowercase, as you suggested, would not help
the situation - all languages that I can think of are proper nouns and
written with capital initial letters; making "javascript" the only
exception would only cause more confusion.

Like it or not, JavaScript has become a pars pro toto expression; in
technical discussions we will keep the distinction between standard and
implementations, but in practical usage (and even in this group)
"JavaScript" is almost generally used as "all languages/implementations
derived from ECMAScript" (there are a few exceptions, such as
"ActionScript").

One way to make the distinction clearer in the FAQ would be to use
JavaScript® and JScript® for trademarked names. At the very least the
FAQ could (should) mention which names are trademarked.


- Conrad
 
J

John G Harris

One should be guided firstly by what ISO/IEC 16262 uses internally,
secondarily by what ECMA 262 uses internally, thirdly by what
Wikipedia uses (because inappropriate notation will have been changed
there); but in the case of single-source products use what the source
uses.

That means ECMAScript, JavaScript, JScript.

Since the language is so widely known as JavaScript, and the newsgroup
is CLJ, the general name used in the FAQ should be JavaScript rather
than ECMAScript. Remember that the FAQ is intended to be read by
ordinary people.
<snip>

"JavaScript" with a capital J and capital S was a registered trademark
owned by Netscape when it was an independent company. It's likely that
it's still a trademark owned by some legal entity.

The ECMAScript standard defines the core language, though it allows and
expects a conforming implementation to provide further objects,
functions, etc.

Using "JavaScript" may need permission and can't be used when talking
about IE, by definition. Using "ECMAScript" implies you're restricting
your remarks to the core language. I claim that "javascript" is the most
suitable spelling when talking generally, with a capital J used only
when it's the first word in a sentence.

John
 
C

Conrad Lender

Non sequitur. Those differences have become one important
reason why we are discussing here in the first place.

I'm getting a little tired of your "non sequitur" remarks, and I'm
beginning to wonder if you even know what it means. We're having
discussions here, we're not engaged in formal logical disputes. But if
you want it formally:

premise A) Most people know this language group only as "JavaScript".
premise B) Non-experts have no clear idea of what ECMAScript is.
premise C) The FAQ is intended for non-experts.

hypothesis: Letting non-experts know we're talking about what they call
JavaScript is more important than only talking about ECMAScript all the
time.

corollary 1: ... escpecially when _we_ _ourselves_ are so inconsistent
with our use of "JavaScript".
corollary 2: ... escpecially when the FAQ deals mostly with problems
that are beyond the scope of ECMAScript.
corollary 3: Defining the terms in the FAQ is still a Good Thing.

When you say "non sequitur", you're supposed to state *why* the
hypothesis doesn't follow from the premises. If you fail to prove that,
your "non sequitur" is void (i.e. almost every time you use it). You're
free to argue against any of the premises, just don't claim "non
sequitur" then. I even invite you to tell me why you think that my
reasoning is faulty (as it may well be), I only object to your naming of
logical fallacies as a substitute for an argument.


- Conrad

PS:
I know I shouldn't rise to flamebait like that, but you're overdoing it.
 
D

Dr J R Stockton

Is there any difference between the two? I've never bothered with the
ISO specs, because I consider ECMA-262 to be normative, and because ISO
usually charges quite a bit for a copy of their specs.

For the casual reader, IMHO, ISO uses a nicer font. For the
programmer, ISO has has some at least of the ECMA bugs fixed. For the
present purpose, the "auxiliary" text differs between the two, and is
as much a source of guidance as the core text.
Wikipedia? As useful as it can be at times, I would very much ignore
what Wikipedia has to say about this topic. They're not an authority.

Wikipedia technical articles are usually thoughtfully written and
edited, with discussion. In such matters, they are more likely to be
right than is any one person here, and approximately as likely to be
right as is a consensus here. Therefore they are worth considering,
as a respectable opinion. I would *NOT* have recommended Wikicodia.


Re another article in the thread - It might be well, or polite, to put
in the FAQ a trademark, registered, or similar character against the
first use of certain terms; but only if the marking, registration,
etc., is known to be substantially international in scope.


Off-topic warning : I've noticed a Web-Mailer which, at least in its
display, apparently treats characters < > and maybe & as HTML does.
They should of course be sent to the browser as &lt; &gt; &amp;, as is
necessary in my Code Boxes.

Consider the effect of sending, in mail,
"Remember, <!-- starts HTML comment, which is closed by -->."
(I know that's a simplification) or "In an <H2> header, ...".
 
T

Thomas 'PointedEars' Lahn

Conrad said:
I'm getting a little tired of your "non sequitur" remarks, and I'm
beginning to wonder if you even know what it means.

Yes, I do know what it means.
We're having discussions here, we're not engaged in formal logical
disputes.

If you are making an argument in favor of or against something, it should be
a convincing one or it is a waste of everybody's time. The least criterium
that it has to fulfill to have a chance to be convincing to anyone
reasonable is conclusiveness, i.e. it must not be fallacious. That is not
quibbling about meaning or opinion, it is a requirement for any fruitful
discussion. The Ancients (most notably Socrates, Plato, and Aristotle)
understood that well; you would be wise to follow their teachings.
But if you want it formally:

premise A) Most people know this language group only as "JavaScript".
premise B) Non-experts have no clear idea of what ECMAScript is.
premise C) The FAQ is intended for non-experts.

Non-experts are supposed to read the FAQ before the post to the newsgroup,
or they are directed to the FAQ after they posted to the newsgroup. In any
case, it is unwise at best to remove terms that are used in the newsgroup
from the FAQ, or use them in an inappropriate way.
hypothesis: Letting non-experts know we're talking about what they call
JavaScript is more important than only talking about ECMAScript all the
time.

Non sequitur: (a colon instead of a dot now, so that you might see the
position of the reasoning better) Nobody said that we should only talk
about ECMAScript. However, calling something JavaScript (in whatever case)
when it is not only JavaScript or may not be a feature in this language
implementation at all, or not calling it ECMAScript when we are referring to
specified behavior, is *wrong*. Again, the differences between them do
matter in code, no matter the coder's experience.
corollary 1: ... escpecially when _we_ _ourselves_ are so inconsistent
with our use of "JavaScript". corollary 2: ... escpecially when the FAQ
deals mostly with problems that are beyond the scope of ECMAScript.
corollary 3: Defining the terms in the FAQ is still a Good Thing.

When you say "non sequitur", you're supposed to state *why* the
hypothesis doesn't follow from the premises.

I did, in the sentence that followed. You just "overlooked" that and added
another fallacy. Maybe you thought that trimming the relevant quotation
would help that others would overlook that flaw, too.
If you fail to prove that, your "non sequitur" is void (i.e. almost every
time you use it). You're free to argue against any of the premises, just
don't claim "non sequitur" then. I even invite you to tell me why you
think that my reasoning is faulty (as it may well be), I only object to
your naming of logical fallacies as a substitute for an argument.

It is not my problem if you are not only unable to provide a single
conclusive argument in your posting, but also provide at least one
inconclusive argument, repeatedly.

If you can't stand the heat, stay out of the kitchen.


PointedEars
 
C

Conrad Lender

For the casual reader, IMHO, ISO uses a nicer font. For the
programmer, ISO has has some at least of the ECMA bugs fixed. For the
present purpose, the "auxiliary" text differs between the two, and is
as much a source of guidance as the core text.

Thank you. Apart from the nicer font, would those "bug fixes" be the
ECMA-262 errata, or did they change the language in any way, to remove
what they considered bugs? And what do the "auxiliary" texts contain? I
still balk at paying CHF 230,- for something that should be free and
open and accessible to all; but I would very much like to know if
they've added anything substantial to the specification.
Wikipedia technical articles are usually thoughtfully written and
edited, with discussion. In such matters, they are more likely to be
right than is any one person here, and approximately as likely to be
right as is a consensus here. Therefore they are worth considering,
as a respectable opinion.

Good point about the consensus, at least they have a process for such
decisions. And I agree that the technical articles are usually of a
pretty high quality. But the FAQ is specifically for this group, and if
a sort of consensus could be reached here, it would trump the Wiki article.

Talking about the FAQ, I would just like to mention that I think that
Garrett is doing a great job, and putting a lot of effort into it.
Thanks.
I would *NOT* have recommended Wikicodia.

Never even heard of that one. www.wikicodia.org shows something about a
"FaviGame" whatever that is, and www.wikicodia.com is just a squatter?
Off-topic warning : I've noticed a Web-Mailer which, at least in its
display, apparently treats characters < > and maybe & as HTML does.
They should of course be sent to the browser as &lt; &gt; &amp;, as is
necessary in my Code Boxes.

Sorry, I lost you there. Was that a remark on the formatting of my post?
I've been using aioe.org since my usual provider has been unreachable
all day. Still it should be all plain-text (I hope).


- Conrad
 
R

Richard Cornford

Conrad Lender wrote:
With all due respect, but if "JavaScript" is a trademark, then
"Javascript" is protected as well

Your point being? (Given that I am not proposing not using "JavaScript"
because it is a trademark name but rather using it only to identify the
implementation to which the trademark name belongs.)

My point is that it would be unwise to make an important
distinction between JavaScript, Javascript, and javascript,
just based on the capitalization.
<snip>

The distinction (between specific implementations, implementations in
general and the specification that is implemented (and extended by
implementations)) is necessary/useful, and no better alternative has
been suggested. While employing the capitalisation to suggest the
distinction has been employed extensively for a long time, on this group
if perhaps not that widely elsewhere.
That would be extremely confusing, especially for
newcomers.

No it would not. Newcomers don't tend to appreciate the distinction at
all and so would read "javascript" as having exactly the same meaning as
"JavaScript", so using the former cannot increase confusion. Later,
understanding more, re-reading would reveal only increased meaning. The
difference between not making a distinction and not seeing a distinction
is negligible, but making the distinction allows for the possibility
that the distinction will be seen.
Writing it all-lowercase, as you suggested, would not help
the situation -

Except that it already does.
all languages that I can think of are proper nouns and
written with capital initial letters; making "javascript" the
only exception would only cause more confusion.
How?

Like it or not, JavaScript has become a pars pro toto expression;
in technical discussions we will keep the distinction between
standard and implementations, but in practical usage (and even
in this group) "JavaScript" is almost generally used as "all
languages/implementations derived from ECMAScript" (there are
a few exceptions, such as "ActionScript").

That is certainly not true of this group.
One way to make the distinction clearer in the FAQ would be to
use JavaScript® and JScript® for trademarked names.

It would be problematic to use the symbols given the simulations
delivery of the content (derived from an XML source) as HTML and plain
text (though not insurmountable).
At the very least the FAQ could (should) mention which names
are trademarked.

I don't see that as adding anything useful, given that it already states
what JavaScript, JScript and ECMAScript are.

Richard.
 
R

Richard Cornford

Conrad said:
On 2008-10-07 23:05, Dr J R Stockton wrote: <snip

Thank you. Apart from the nicer font, would those "bug fixes"
be the ECMA-262 errata, or did they change the language in any
way, to remove what they considered bugs?

One of the - for - statement algorithms in ECMA 262 3rd Ed. is obviously
wrong (section 12.6.3, second algorithm, step 7 (should go to step 17
instead of 14)). That has been corrected in the ISO version, but the
original was sufficiently obviously wrong that it was never implemented
in that way so the correction fixes a bug in the original specification
and nothing else. Apart form that the ISO version has a few minor
modifications to a very few algorithms along the lines of splitting a
single step up into 2 where previously two actions were specified in the
single step.
And what do the "auxiliary" texts contain? I still balk at
paying CHF 230,- for something that should be free and
open and accessible to all;

Ironically the print/binding quality of ISO specifications is very poor,
so if you are going to pay form one get it in electronic form and print
your own, then you will be able to print another when the first falls
apart.
but I would very much like to know if
they've added anything substantial to the specification.
<snip>

Nothing.

Richard.
 
D

dhtml

Richard said:
And how is that supposed to help?


Absolutely not. It is necessarily to be able to differentiate between
the ECMAScript implementation that has a name with that trademark
capitalisation and the general category of ECMAScript implementations.

That's why I made the change. It sounds like you opine that by not
camel-casing, the distinction will be clear that "javascript" is a
non-proper noun, used in the general sense, and "JavaScript" means
Mozilla's implementation. Is this what you meant?
As the latter is called "javascript" (with or without capitalisation)
but the former is named "JavaScript" (with the specific
capitalisation) it makes most sense to differentiate between the two
by employing alternative capitalisation. This has been discussed
before (and at length) and the wording employed in the FAQ represented
the consensus at the time.

I don't know that the latter (EMCAScript in general) is more commonly
written "javascript" than "JavaScript". It's not pronounced any
differently. I think at work, it's always called "JavaScript". I never
had anybody ask me if I "Checked that ecmascript file in?" From what I
notice, it's written capitalized and camel cased.

What do you mean "No"?
And a Trademark name, as is "JScript".


Always? URL (or any evidence substantiating that claim)?

I can't find any more links at the moment.

https://mail.mozilla.org/pipermail/es-discuss/2008-August/006837.html
http://ajaxian.com/archives/brendan-eich-javascript-2-and-the-future-of-the-web


Typing ease is hardly an excuse, but use "javascript" (capitalised if
it appears at the beginning of a sentence) and it is likely that
readers will sufficiently understand what is being referred to.

It's still easier to read.
Javascript.

There still is not a strong consensus on what should be used throughout.

"EcmaScript" should be changed to "ECMAScript", if used.
 
D

dhtml

Conrad said:
premise A) Most people know this language group only as "JavaScript".
premise B) Non-experts have no clear idea of what ECMAScript is.
premise C) The FAQ is intended for non-experts.

hypothesis: Letting non-experts know we're talking about what they call
JavaScript is more important than only talking about ECMAScript all the
time.

corollary 1: ... escpecially when _we_ _ourselves_ are so inconsistent
with our use of "JavaScript".
corollary 2: ... escpecially when the FAQ deals mostly with problems
that are beyond the scope of ECMAScript.
corollary 3: Defining the terms in the FAQ is still a Good Thing.

It might be useful to have an explanation for JavaScript meaning one of
two things:
1) Loosely, ECMAScript and browser scripting
2) Mozilla's implementation of ECMAScript
 
R

RobG

Richard said:
On Oct 7, 3:04 am, dhtml wrote: [...]
What do you want in the FAQ: JavaScript, EcmaScript,
or ECMAScript?
Javascript.

There still is not a strong consensus on what should be used throughout.

I think the consensus is pretty strong that ECMAScript should only be
used when referring specifically to the standard, otherwise use
javascript (or Javascript at the begining of sentences). When
referring to specific implementations, make it clear such as
"Mozilla's JavaScript" or "Opera's JavasScript" so there is no doubt.

Including the name of the implementation itself is probably only
useful for JScript.

"EcmaScript" should be changed to "ECMAScript", if used.

Yes.

FAQ 2.5 does a reasonable job of describing ECMAScript and ECMA 262
(though I would move the link to the PDF to the bottom of the entry).
Why not use ECMA-262 to make it clear that the reference is to the
specification and not the language in general? It should also be
possible to link to FAQ 2.5 wherever ECMA-262 is used.

e.g. FAQ 4.2 could read:

"ECMA-262 specifies that numbers are represented..."
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,578
Members
45,052
Latest member
LucyCarper

Latest Threads

Top