473,411 Members | 2,129 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,411 software developers and data experts.

FAQ Update 9.85 Dated 2007-08-31

FAQ Update 9.85 Dated 2007-08-31:

Section 3.1 changed to read:

The only book currently endorsed by c.l.j. regulars is:

javascript: The Definitive Guide, 5th Edition By David Flanagan
ISBN:0-596-10199-6

Also by David Flanagan: JavaScript Pocket Reference, 2nd Edition. ISBN
0-596-00411-7 for language and API reference alone.

The errata should be considered a must read along with the book.

http://www.oreilly.com/catalog/jscript5/
Errata:
http://www.oreilly.com/catalog/jscript5/errata/
David Flanagan's Blog Site:
http://www.davidflanagan.com/

Section 4.22 reworded and the MSDN URL changed.

--
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq/index.html
FAQ Notes: http://www.jibbering.com/faq/faq_notes/faq_notes.html
ECMAScript Language Specification via FAQ2.6
Aug 31 '07 #1
24 1534
FAQEditor wrote:
FAQ Update 9.85 Dated 2007-08-31:

Section 3.1 changed to read:

The only book currently endorsed by c.l.j. regulars is:

javascript: The Definitive Guide, 5th Edition By David
Flanagan ISBN:0-596-10199-6
That still isn't technically true, as there have been no such
endorsements (in the sense in which the 4th edition was explicitly
endorsed by at leas a handful of regulars). Still, I would be willing to
go with that wording at present, if only to put a stop to the pointless
quibbling. The 5th edition does not seem to be worse than the 4th so I
think that those who did endorse the 4th would be as willing to endorse
the 5th.

I think we are, once again, suffering from the obvious fact that those
who are already familiar with javascript, web browsers and the DOM are
not motivated to by and read reference works on the subject (and the
book's authors are not motivated to pay such individuals to do reviews
of their books, as the results will likely be heavily critical).
Also by David Flanagan: JavaScript Pocket Reference, 2nd Edition.
ISBN 0-596-00411-7 for language and API reference alone.

The errata should be considered a must read along with the book.
While pointing out that there is an errata is a good idea I think it
would be good if the fact could better express that the errata will only
contain corrections that the author is willing to recognise. For
example, the subdivision of the book into 'core' and 'client side'
javascript, justified in the first couple of editions, an anachronism by
the 4th and a positive mistake in the 5th, is unlikely to ever be
'corrected' in an errata. And neither is much of the misleading and
ambiguous terminology employed in the book, or the inadequate discussion
of the use of - navigator.userAgent.
http://www.oreilly.com/catalog/jscript5/
Errata:
http://www.oreilly.com/catalog/jscript5/errata/
David Flanagan's Blog Site:
http://www.davidflanagan.com/
I don't think that David Flanagan's blog deserves a mention at all.

Richard.

Sep 1 '07 #2
On Sep 1, 11:49 am, "Richard Cornford" <Rich...@litotes.demon.co.uk>
wrote:
FAQEditor wrote:
FAQ Update 9.85 Dated 2007-08-31:
Section 3.1 changed to read:
The only book currently endorsed by c.l.j. regulars is:
javascript: The Definitive Guide, 5th Edition By David
Flanagan ISBN:0-596-10199-6
<snip>
I think we are, once again, suffering from the obvious fact that those
who are already familiar with javascript, web browsers and the DOM are
not motivated to by and read reference works on the subject (and the
book's authors are not motivated to pay such individuals to do reviews
of their books, as the results will likely be heavily critical).
As noted in this thread: http://groups.google.com/group/comp....87efe0fe05543c

javascript: TDG (5th ed.) was reviewed by Douglas Crockford, Norris
Boyd, Peter-Paul Koch, Christian Heilmann, Ken Cooper, Todd
Ditchendorf, Geoff Stearns, and Sanders Kleinfeld. Reviewers of
previous editions include Brendan Eich and Waldemar Horwat.

-David

Sep 1 '07 #3
Richard Cornford said the following on 9/1/2007 2:49 PM:
FAQEditor wrote:
<snip>
>http://www.oreilly.com/catalog/jscript5/
Errata:
http://www.oreilly.com/catalog/jscript5/errata/
David Flanagan's Blog Site:
http://www.davidflanagan.com/

I don't think that David Flanagan's blog deserves a mention at all.
The blog site has been removed from my local copy.

--
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq/index.html
FAQ Notes: http://www.jibbering.com/faq/faq_notes/faq_notes.html
ECMAScript Language Specification via FAQ2.6
Sep 1 '07 #4
David Golightly wrote:
On Sep 1, 11:49 am, Richard Cornford wrote:
>FAQEditor wrote:
>>FAQ Update 9.85 Dated 2007-08-31:
>>Section 3.1 changed to read:
>>The only book currently endorsed by c.l.j. regulars is:
>>javascript: The Definitive Guide, 5th Edition By David
Flanagan ISBN:0-596-10199-6

<snip>
>I think we are, once again, suffering from the obvious fact
that those who are already familiar with javascript, web
browsers and the DOM are not motivated to by and read
reference works on the subject (and the book's authors are
not motivated to pay such individuals to do reviews of
their books, as the results will likely be heavily critical).

As noted in this thread:
http://groups.google.com/group/comp....87efe0fe05543c

javascript: TDG (5th ed.) was reviewed by Douglas Crockford,
Norris Boyd, Peter-Paul Koch, Christian Heilmann, Ken Cooper,
Todd Ditchendorf, Geoff Stearns, and Sanders Kleinfeld.
Reviewers of previous editions include Brendan Eich and
Waldemar Horwat.
Your point being?

Richard.

Sep 1 '07 #5
In comp.lang.javascript message <Cq*********************@giganews.com>,
Fri, 31 Aug 2007 17:11:33, FAQEditor <cl****@comcast.netposted:

For the next update, but needing no announcement,

>javascript: The Definitive Guide, 5th Edition By David Flanagan
by
or
David Flanagan's "javascript: The Definitive Guide", 5th Edition.
>The errata should be considered a must read along with the book.
----------- ... ugh!
>The errata should be read with the book.
Actually, the errata should be used to correct the book.

--
(c) John Stockton, Surrey, UK. ?@merlyn.demon.co.uk Turnpike v6.05 MIME.
Web <URL:http://www.merlyn.demon.co.uk/- FAQish topics, acronyms, & links.
Plaintext, quoting : see <URL:http://www.usenet.org.uk/ukpost.html>
Do not Mail News to me. Before a reply, quote with ">" or "" (SoRFC1036)
Sep 1 '07 #6
On Sep 1, 1:59 pm, "Richard Cornford" <Rich...@litotes.demon.co.uk>
wrote:
David Golightly wrote:
On Sep 1, 11:49 am, Richard Cornford wrote:
... the book's authors are
not motivated to pay such individuals [who are already familiar with javascript, web browsers and the DOM] to do reviews of
their books, as the results will likely be heavily critical....
As noted in this thread:
http://groups.google.com/group/comp....wse_thread/thr...
javascript: TDG (5th ed.) was reviewed by Douglas Crockford,
Norris Boyd, Peter-Paul Koch, Christian Heilmann, Ken Cooper,
Todd Ditchendorf, Geoff Stearns, and Sanders Kleinfeld.
Reviewers of previous editions include Brendan Eich and
Waldemar Horwat.

Your point being?

Richard.
The point being evident, that you claimed that the book's authors are
not motivated to hire reviewers who are familiar with the subject
matter. The above list of names would indicate to the contrary.

-David

Sep 1 '07 #7
"David Golightly" <da******@gmail.comwrote in message
news:11**********************@50g2000hsm.googlegro ups.com...
On Sep 1, 1:59 pm, "Richard Cornford" <Rich...@litotes.demon.co.uk>
wrote:
>David Golightly wrote:
>>On Sep 1, 11:49 am, Richard Cornford wrote:
... the book's authors are
not motivated to pay such individuals
[who are already familiar with javascript, web browsers
and the DOM] to do reviews of
their books, as the results will likely be heavily critical....
>>As noted in this thread:
http://groups.google.com/group/comp....wse_thread/thr...
>>javascript: TDG (5th ed.) was reviewed by Douglas Crockford,
Norris Boyd, Peter-Paul Koch, Christian Heilmann, Ken Cooper,
Todd Ditchendorf, Geoff Stearns, and Sanders Kleinfeld.
Reviewers of previous editions include Brendan Eich and
Waldemar Horwat.

Your point being?
<snip>
The point being evident,
No it was not evident. Now you appear to be asserting that the above
list represents individuals who are "familiar with javascript, web
browsers and the DOM", though you have in no way demonstrated that.
that you claimed that the book's authors
When did David Flanagan become the authors of javascript reference
books?
are not motivated to hire reviewers who are familiar
with the subject matter. The above list of names would
indicate to the contrary.
The above list says nothing about the motivations of the authors of
javascript reference books (it just may say something about the actions
of an author of a single javascript reference book).

Richard.

Sep 1 '07 #8
On Sep 1, 4:49 pm, "Richard Cornford" <Rich...@litotes.demon.co.uk>
wrote:
"David Golightly" <davig...@gmail.comwrote in message

news:11**********************@50g2000hsm.googlegro ups.com...
On Sep 1, 1:59 pm, "Richard Cornford" <Rich...@litotes.demon.co.uk>
wrote:
David Golightly wrote:
On Sep 1, 11:49 am, Richard Cornford wrote:
... the book's authors are
not motivated to pay such individuals
[who are already familiar with javascript, web browsers
and the DOM] to do reviews of
their books, as the results will likely be heavily critical....
>As noted in this thread:
http://groups.google.com/group/comp....wse_thread/thr...
>javascript: TDG (5th ed.) was reviewed by Douglas Crockford,
Norris Boyd, Peter-Paul Koch, Christian Heilmann, Ken Cooper,
Todd Ditchendorf, Geoff Stearns, and Sanders Kleinfeld.
Reviewers of previous editions include Brendan Eich and
Waldemar Horwat.
Your point being?
<snip>
The point being evident,

No it was not evident. Now you appear to be asserting that the above
list represents individuals who are "familiar with javascript, web
browsers and the DOM", though you have in no way demonstrated that.
Likewise, you have in no way demonstrated your claim that the book's
author is NOT motivated to pay appropriate subject-matter experts to
review the book. In fact, by disputing that, you manage to undermine
your own credibility by questioning the credibility of these well-
known experts.

To name a few:
Douglas Crockford - Senior JavaScript architect, Yahoo!
Norris Boyd - creator of the Rhino JavaScript interpreter
Peter-Paul Koch - freelance developer and established author of
quirksmode.org
Christian Heilmann - established web developer, standards advocate,
and technical author
Todd Ditchendorf - software engineer at Apple Computer, freelance
developer, standards advocate

The supposed controversy lies in the lack of an objective standard for
"quality" in this domain, though the best approximation we can achieve
is by taking the words of established, creative, inventive, successful
developers who have produced work and created software outside of
esoteric examples and self-righteous language lawyering on Usenet.
Perhaps I personally fall in that last category, or somewhere else, I
don't know. But if you can't acknowledge the expertise of the proven
experts, well, then, why should anyone listen to you?

are not motivated to hire reviewers who are familiar
with the subject matter. The above list of names would
indicate to the contrary.

The above list says nothing about the motivations of the authors of
javascript reference books (it just may say something about the actions
of an author of a single javascript reference book).
The thread started in the particular, you brought it into the general,
now I (though admitting a typo) have attempted to bring it back to the
particular.

-David

Sep 2 '07 #9
In comp.lang.javascript message <fb*******************@news.demon.co.uk>
, Sun, 2 Sep 2007 04:02:44, Richard Cornford
<Ri*****@litotes.demon.co.ukposted:
>
That was a real and demonstrable issue with Flanagan's book, and I can
find plenty more of them, and back them up with reasoned argument and
practical demonstration.

To be constructive, you could do that, and send it to David Flanagan so
that the Sixth Edition could be improved. His E-mail address is easy to
find.
But, as regards the FAQ, that's a detail.

The FAQ maintainer seems to have wanted to say something equivalent to
"The book ... is strongly endorsed by all experts in this newsgroup,
being (when read in conjunction with its Errata) near enough perfectly
accurate" - and cannot find anything to replace the ellipsis.

But that's not what the intended reader needs; all he needs is something
like "One of the best books is ..." - and that ellipsis *is*
replaceable.

In FAQ Section 3, before 3.1, there could be something like : "Be aware
that no source will be absolutely reliable, and any source may become
outdated."

The FAQ links to ECMA-262 3rd Edn, but lacks a reference to its Errata.
Googling for "ecmascript errata" finds 80400 links, but happily the
first is good.

--
(c) John Stockton, Surrey, UK. ?@merlyn.demon.co.uk Turnpike v6.05 MIME.
<URL:http://www.merlyn.demon.co.uk/TP/BP/Delphi/&c., FAQqy topics & links;
<URL:http://www.merlyn.demon.co.uk/clpb-faq.txt RAH Prins : c.l.p.b mFAQ;
<URL:ftp://garbo.uwasa.fi/pc/link/tsfaqp.zipTimo Salmi's Turbo Pascal FAQ.
Sep 2 '07 #10
Dr J R Stockton wrote:
Richard Cornford posted:
>>
That was a real and demonstrable issue with Flanagan's book,
and I can find plenty more of them, and back them up with
reasoned argument and practical demonstration.


To be constructive, you could do that, and send it to David
Flanagan so that the Sixth Edition could be improved. His
E-mail address is easy to find.
We can easily test that proposition. If I open the 5th edition at some
point (it turned out to be page 60) and start commenting on what I
find:-

| Page 61; Table of JavaScript operators:-
|
| Operator Operand type(s) Operation performed
| -----------------------------------------------------------
| . object, identifier Property access
| [] array, integer Array index
| () function, arguments function call
| new constructor call Create new object
| ++ lvlaue Pre-or post-increment(unary)
| -- lvalue Pre- or post-decrement(unary)
| - number unary minus(negation)
| + number Unary plus(no-op)
| ~ integer Bitwise complement(unary)
| ! boolean Logical complement(unary)
| delete lvalue Undefined a property(unary)
| typeof any Return datatype(unary)
|
| ...
|
| instanceof object, constructor Check object type
| in string, object Check whether property exists
|
| ...
|
| && boolean Logical AND
| || boolean Logical OR
| ...
The operands for the square brackets are object and string not array and
integer, and the operation is property access. The above serves to fuel
a common misconception that does not act to assist people learning
javascript to understand what they are doing.

The grouping operator is absent for the list (parenthesised
expressions).

Unary plus should not be ladled "no-op" as its type-converting side
effects are the main reason for using it at all. That makes listing the
operand types as 'number' a questionable act. Indeed, it could easily be
argued that most of the types shown should actually be 'any', as very
few operators are insistent on the actual type of their operands in
javascript. The two logical operators being probably the worst offenders
as examples of inappropriately labelled operand types (the right hand
side operand is never type converted by a logical AND or OR operation).

Javascript has no integer types, but if the intention is to express the
types that operands will be converted into then the assertion should be
signed or unsinged (as appropriate) 32 bit integers, as javascript's
numeric type can accommodate integers over a much greater range.

The action of the - delete - operator should not be labelled "Undefined
a property" as that is not what it does. If you delete a property of an
object and that object's prototype has an identically named property the
original object still effectively has the property 'defined', it just
does not actually have the property itself. It would be sufficient to
say that the - delete - operator removes a property from a specific
object, or attempts to, as it may not always succeed in the attempt.

The - typeof - operator does not return a "datatype" it returns a string
(if "returns" is going to be used to stand in for "evaluates as" at
all).

The listed operands of - instanceof - should be object (or, more
correctly 'any') and function, as those are the real restrictions on the
operation. And the operation should not be misleadingly described as
"Check object type" given that objects don't have types in this sense
and the object/function relationships tested by - instanceof - are
amenable to dynamic manipulation at runtime anyway, making the outcomes
potentially inconsistent over time and uncertain (neither of which fit
at all well with the concept of an object's type).

| Page 62:-
|
| For example it is not possible to multiply strings, so the
| expression "a" * "b" is not legal in JavaScript.

- which is simply not true. It is possible to multiply strings (at least
it is possible for strings to be the operands of the multiplication
operator, if often not meaningful), and the expression is completely
legal in JavaScript, just of extremely questionable worth.

| Page 63:-
|
| Notice that the assignment operators, as well as a few others
| operators, expect their left-side arguments to be lvalues.
| lvalue is a historical term that means "an expression that can
| legally appear on the left side of an assignment expression." In
| JavaScript, variables properties of objects, and elements of
| arrays are lvalues. The ECMAScript specification allows built-in
| functions to return lvalues but does not define any built-in
| functions that behave that way,

An example of imprecise wording. In context an "lvalue" is whatever
David Flanagan chooses to assert it to be. The concept being ladled is
what ECMA 262 names a "Reference type". The advantage of calling it a
Reference type is that anyone can go to the specification, look it up,
and then know precisely what it is that is being talked about.

So where the above says "variables, properties of objects and elements
of arrays" the fact that both the scope chain resolution of Identifiers
and property accessors result in reference types (always and only)
explains why these things may be the left has side of assignment
operations.

It also shows a factual omission, as grouping operations (parenthesised
expressions) may also be the left hand side of an assignment, whenever
the expression they contain evaluates as a Reference type. It would also
be practical to argue that if "variables" are to be included in the list
then (the Identifiers for) formal parameters and inner function
declarations may also be the left hand side of assignments.

"Variables, properties of objects and elements of arrays" are, of
course, all just properties of objects, making two items in that list
superfluous. In terms of explaining the language it may be acceptable to
include "variables" (and even use it as a shorthand for all Identifier
resolution, including inner function declarations and formal parameters)
but trying to enforce a distinction between properties of objects and
array elements is another manifestation of the error in the table of
operators on page 61 where bracket notation is misleadingly being
associated with array objects only.

Built-in functions (as defined in ECMA 262, section 4.3.7) may not
return a Reference type. The possibility that a function/method call
could return a Reference type is reserved for host objects (Section
4.3.8), as is stated in Sections 8.7 and 11.2.3.

Now that is 600 words on just 4 pages. The book is 950 odd pages long,
and that adds up to a lot of words and a lot of work writing them. If I
am going to put that much effort into doing something for free I am
going to do it where I have always prefer to do it. Right here on this
group, in public, and not some private e-mail exchange where nobody else
gets to comment on (or learn from) the exchange. If David Flanagan wants
his ideas and his code critiqued he is at liberty to bring them here and
present them to group as a whole, just like everyone else.
But, as regards the FAQ, that's a detail.

The FAQ maintainer seems to have wanted to say something
equivalent to "The book ... is strongly endorsed by all
experts in this newsgroup, being (when read in conjunction
with its Errata) near enough perfectly accurate" - and
cannot find anything to replace the ellipsis.
Are you saying that you have deduced that from something Randy has
written? That would not be my interpretation of his posts on the
subject. Though I am sure everyone would like to be in a position to be
recommending a book because it was "perfectly accurate" or in some other
sense good.
But that's not what the intended reader needs; all he needs
is something like "One of the best books is ..." - and that
ellipsis *is* replaceable.
<snip>

But even that is misleading when a book gets to be "one of the best" by
virtue of being the least bad.

Richard.

Sep 3 '07 #11
>
Built-in functions (as defined in ECMA 262, section 4.3.7) may not
return a Reference type. The possibility that a function/method call
could return a Reference type is reserved for host objects (Section
4.3.8), as is stated in Sections 8.7 and 11.2.3.
Can you explain why this is?

Now that is 600 words on just 4 pages. The book is 950 odd pages long,
and that adds up to a lot of words and a lot of work writing them. If I
am going to put that much effort into doing something for free I am
going to do it where I have always prefer to do it. Right here on this
group, in public, and not some private e-mail exchange where nobody else
gets to comment on (or learn from) the exchange. If David Flanagan wants
his ideas and his code critiqued he is at liberty to bring them here and
present them to group as a whole, just like everyone else.
The ecma262 manual is intended to be read by implementors. There is no
user guide.

Making a user-friendly manual for javascript (and it's variants) would
be a huge benefit to the community.

That would be awesome! David, where are you?

Sep 3 '07 #12
Hi All,

Allow me to weigh in here on my book.

1) Thanks for the continued listing of the book in the FAQ. I
appreciate the listing, even if it is only a citation as, as Richard
would have it, "the least bad" book. Though I do like to believe that
there are lots of good parts in the book, too :-)

2) I don't believe that a link to my blog is appropriate. Recently
I've been blogging about Ruby the most, and also Java, with little
JavaScript content. I do think that, for purposes of identification,
it would be valuable to link my name to my website (which happens to
be a blog). That way I won't be mistaken for the conservative
political blogger, for example, who shares my name.

3) The JavaScript pocket reference is probably out of date, and while
I appreciate the listing, you might consider removing that link.
(Though the regular readers of this group might have a more well-
informed opinion about whether it is still a useful work.)

4) Richard: thank you for your feedback but please keep in mind that
my book is not intended to replace the specification. You appear to
be an expert who can read and learn things from the spec. The table of
operators you have critiqued remains from early editions of the book,
and I've never been quite satisfied with it. You make a number of good
points about it. Many of the points you raise cannot be addressed in
tabular form, however. And some of the points you raise are judgment
calls in which I have made a different judgment than you. For
example, I don't consider parentheses used for grouping to be
operators, so I didn't include them in the table.

5) David Golightly cites the list of technical reviewers for my 5th
edition. It is an impressive list, and I was very happy to have such
luminaries review the book. Nevertheless, the fact that they agreed
to do a technical review cannot be taken as their endorsement of the
book. Brendan Eich did offer an endorsement of the first or second
edition of the book, and that endorsement still appears on the back
cover.

Sincerely,

David Flanagan
Sep 3 '07 #13
In comp.lang.javascript message <fb*******************@news.demon.co.uk>
, Mon, 3 Sep 2007 01:57:03, Richard Cornford
<Ri*****@litotes.demon.co.ukposted:
>Dr J R Stockton wrote:
>Richard Cornford posted:
>>>
That was a real and demonstrable issue with Flanagan's book,
and I can find plenty more of them, and back them up with
reasoned argument and practical demonstration.


To be constructive, you could do that, and send it to David
Flanagan so that the Sixth Edition could be improved. His
E-mail address is easy to find.

We can easily test that proposition. If I open the 5th edition at some
point (it turned out to be page 60) and start commenting on what I
find:-
>| Page 61; Table of JavaScript operators:-
| ... ...
Waste of space; there is no doubt that you could and would comment at
length. That is of no use unless DF reads it. As a failed FAQ
maintainer, it ill behoves you to be over-critical of a successful
author.

>But, as regards the FAQ, that's a detail.

The FAQ maintainer seems to have wanted to say something
equivalent to "The book ... is strongly endorsed by all
experts in this newsgroup, being (when read in conjunction
with its Errata) near enough perfectly accurate" - and
cannot find anything to replace the ellipsis.

Are you saying that you have deduced that from something Randy has
written?
Since I know RW only by his writing, that must necessarily be the case.
That would not be my interpretation of his posts on the subject.
And that can be equally true.
>Though I am sure everyone would like to be in a position to be
recommending a book because it was "perfectly accurate" or in some
other sense good.
That's why I thought RW would like to do so.
>But that's not what the intended reader needs; all he needs
is something like "One of the best books is ..." - and that
ellipsis *is* replaceable.
>But even that is misleading when a book gets to be "one of the best" by
virtue of being the least bad.
Do not compare the benefits of using Flanagan with the benefits of using
the book that you might have written; compare it with the benefits of
using no book.

But I wrote, and you quoted, "something like". You might prefer "One of
the less bad ..."

--
(c) John Stockton, Surrey, UK. ?@merlyn.demon.co.uk Turnpike v6.05 MIME.
<URL:http://www.merlyn.demon.co.uk/TP/BP/Delphi/&c., FAQqy topics & links;
<URL:http://www.merlyn.demon.co.uk/clpb-faq.txt RAH Prins : c.l.p.b mFAQ;
<URL:ftp://garbo.uwasa.fi/pc/link/tsfaqp.zipTimo Salmi's Turbo Pascal FAQ.
Sep 3 '07 #14
df*******@gmail.com said the following on 9/3/2007 5:27 PM:
Hi All,

Allow me to weigh in here on my book.

1) Thanks for the continued listing of the book in the FAQ. I
appreciate the listing, even if it is only a citation as, as Richard
would have it, "the least bad" book. Though I do like to believe that
there are lots of good parts in the book, too :-)
You can please some of the people all of the time.
You can please all of the people some of the time.
You can't please all of the people all of the time :)

As for the FAQ Entry, I don't see your book coming out of it any time in
the near future.
2) I don't believe that a link to my blog is appropriate. Recently
I've been blogging about Ruby the most, and also Java, with little
JavaScript content. I do think that, for purposes of identification,
it would be valuable to link my name to my website (which happens to
be a blog). That way I won't be mistaken for the conservative
political blogger, for example, who shares my name.
If I remember right, when the blog address was added you were blogging
about the book. The link to it has been removed from my local copy and
will be removed from the online copy of the FAQ sometime this week.
3) The JavaScript pocket reference is probably out of date, and while
I appreciate the listing, you might consider removing that link.
(Though the regular readers of this group might have a more well-
informed opinion about whether it is still a useful work.)
Nothing quite like an author suggesting you not recommend his own book.
The reference to it has been removed locally and will also get removed
this week from the online version.

--
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq/index.html
FAQ Notes: http://www.jibbering.com/faq/faq_notes/faq_notes.html
ECMAScript Language Specification via FAQ2.6
Sep 4 '07 #15
Dr J R Stockton said the following on 9/2/2007 4:10 PM:
In comp.lang.javascript message <fb*******************@news.demon.co.uk>
, Sun, 2 Sep 2007 04:02:44, Richard Cornford
<Ri*****@litotes.demon.co.ukposted:
>That was a real and demonstrable issue with Flanagan's book, and I can
find plenty more of them, and back them up with reasoned argument and
practical demonstration.


To be constructive, you could do that, and send it to David Flanagan so
that the Sixth Edition could be improved. His E-mail address is easy to
find.
But, as regards the FAQ, that's a detail.
As regards the FAQ, the entry is staying the way it is for now.
The FAQ maintainer seems to have wanted to say something equivalent to
"The book ... is strongly endorsed by all experts in this newsgroup,
being (when read in conjunction with its Errata) near enough perfectly
accurate" - and cannot find anything to replace the ellipsis.
Contrary to what you may think, may want to think, believe or want to
believe, I wrote exactly what I meant to write. And nothing you think
that I "seem to have wanted to say" will change it. Nor is there an
ellipsis in what I wrote.

--
Randy
comp.lang.javascript FAQ - http://jibbering.com/faq/index.html
FAQ Notes: http://www.jibbering.com/faq/faq_notes/faq_notes.html
ECMAScript Language Specification via FAQ2.6
Sep 4 '07 #16
Dr J R Stockton said the following on 9/3/2007 4:16 PM:
In comp.lang.javascript message <fb*******************@news.demon.co.uk>
, Mon, 3 Sep 2007 01:57:03, Richard Cornford
<Ri*****@litotes.demon.co.ukposted:
>Dr J R Stockton wrote:
>>Richard Cornford posted:
That was a real and demonstrable issue with Flanagan's book,
and I can find plenty more of them, and back them up with
reasoned argument and practical demonstration.

To be constructive, you could do that, and send it to David
Flanagan so that the Sixth Edition could be improved. His
E-mail address is easy to find.
We can easily test that proposition. If I open the 5th edition at some
point (it turned out to be page 60) and start commenting on what I
find:-
>| Page 61; Table of JavaScript operators:-
| ... ...
Waste of space; there is no doubt that you could and would comment at
length. That is of no use unless DF reads it. As a failed FAQ
maintainer, it ill behoves you to be over-critical of a successful
author.
YSCIB. And, Richard is not a "failed FAQ maintainer" as you like to
throw around. Richard did more for the FAQ in the time I he maintained
it than you have done in your entire time in c.l.j. And, no matter how
many times you write it, it won't make it true.
>>But, as regards the FAQ, that's a detail.

The FAQ maintainer seems to have wanted to say something
equivalent to "The book ... is strongly endorsed by all
experts in this newsgroup, being (when read in conjunction
with its Errata) near enough perfectly accurate" - and
cannot find anything to replace the ellipsis.
Are you saying that you have deduced that from something Randy has
written?

Since I know RW only by his writing, that must necessarily be the case.
Your powers of deduction are flawed then. All it takes is to read what I
write and comprehend it to know exactly what I meant and wrote. From
your past posts, it is obvious that you fail to understand what I write
and mean by what I write.

--
Randy
Chance Favors The Prepared Mind
comp.lang.javascript FAQ - http://jibbering.com/faq/index.html
Javascript Best Practices - http://www.JavascriptToolbox.com/bestpractices/
Sep 4 '07 #17
<dh**********@gmail.comwrote:
References: <Cq*********************@giganews.com>
<fb*******************@news.demon.co.uk>
<11**********************@k79g2000hse.googlegroups .com>
<snip>
<11**********************@o80g2000hse.googlegroups .com>
<fb*******************@news.demon.co.uk>
In-Reply-To: fb*******************@news.demon.co.uk

David,
<snip>

Why have you posted a message that appears to be intended as a response
to David Flanagan as a reply to my message (Message-ID:
<fb*******************@news.demon.co.uk>)?

Richard.

Sep 4 '07 #18
Richard,

On Sep 3, 5:13 pm, "Richard Cornford" <Rich...@litotes.demon.co.uk>
wrote:
The specification also provides an unambiguous set of terminology for
use when talking about javascript. It is very easy for anyone who wants
to throw any terms they like into a discussion of javascript; 'stack
frames', 'scope blocks', 'call objects', 'lvalues', 'execution
contexts', and so on. And of those terms only statements about
javascript employing only 'execution context' could be judged true or
false by anyone, because it is a term that is from the languages
specification and its role in the language has a precise definition. The
other terms may be used with intended meaning, under some unstated
misconception or in a deliberate attempt to impress the uninformed with
jargonise. All become possible because in relation to javascript the are
inherently ambiguous terms.
Respectfully, I disagree. Had the spec been better written, book
authors like myself could use the terminology from the spec. It was a
conscious choice to use terms other than those from the spec, but it
is a choice I stand by
The table of operators you have critiqued remains from early
editions of the book, and I've never been quite satisfied with it.

As does the division of the book into 'core' and 'client-side'
javascript.
This is also a decision I stand by strongly. The core language is
formally specified and can be used outside of browsers, such as to
script Java 6. The client-side portion is clearly distinct and I
think it ought to be covered separately. The 4th edition introduced a
distinction between traditional client-side JavaScript and the DOM.
That distinction ceased to be relevant and those two sections have
been re-integrated in the 5th edition.

David
Sep 4 '07 #19
In comp.lang.javascript message <11**********************@o80g2000hse.go
oglegroups.com>, Mon, 3 Sep 2007 14:27:41, df*******@gmail.com posted:
Good to see you here.

That way I won't be mistaken for the conservative
political blogger, for example, who shares my name.
I have similar feelings about a basketballer of Utah.

>3) The JavaScript pocket reference is probably out of date, and while
I appreciate the listing, you might consider removing that link.
(Though the regular readers of this group might have a more well-
informed opinion about whether it is still a useful work.)
For the purpose of placing and keeping immediately to hand on a crowded
desk, it is enormously better than The Definitive Guide. There does not
seem to be much wrong with the Pocket 2nd Edn, as long as one remembers
its date.

In Date, there should be a mention of 1970-01-01 00:00:00 UT as the
origin of getTime, setTime, valueOf, new Date(milliseconds); get[UTC]Day
needs (Sun=0 to Sat=6); getTimezoneOffset needs minutes and East or
West; (get|set)[UTC]month needs (0 to 11) ; all IMHO. Probably you have
them in the Definitive.

Page 12 lacks, I suspect, an entry for delete.

A list of the methods using RegExps could help those who have trouble
remembering whether, for example, match belongs to String or RegExp (so
I made my own list [@ <http://www.merlyn.demon.co.uk/js-valid.htm#JS>]).

I'd like to buy a 3rd edition of it, especially at a UK price
recognising the $:£ ratio.

--
(c) John Stockton, Surrey, UK. ?@merlyn.demon.co.uk Turnpike v6.05 IE 6
news:comp.lang.javascript FAQ <URL:http://www.jibbering.com/faq/index.html>.
<URL:http://www.merlyn.demon.co.uk/js-index.htmjscr maths, dates, sources.
<URL:http://www.merlyn.demon.co.uk/TP/BP/Delphi/jscr/&c, FAQ items, links.
Sep 4 '07 #20
In comp.lang.javascript message <11**********************@w3g2000hsg.goo
glegroups.com>, Tue, 4 Sep 2007 09:52:30, df*******@gmail.com posted:
The 4th edition introduced a
distinction between traditional client-side JavaScript and the DOM.
That distinction ceased to be relevant and those two sections have
been re-integrated in the 5th edition.
Is that cessation altogether true? Surely javascript executed in
Windows Scripting Host does not share the browser DOM? Some WSH tasks,
at least, are easier in javascript.

--
(c) John Stockton, Surrey, UK. ?@merlyn.demon.co.uk Turnpike v6.05 IE 6
news:comp.lang.javascript FAQ <URL:http://www.jibbering.com/faq/index.html>.
<URL:http://www.merlyn.demon.co.uk/js-index.htmjscr maths, dates, sources.
<URL:http://www.merlyn.demon.co.uk/TP/BP/Delphi/jscr/&c, FAQ items, links.
Sep 4 '07 #21
On Sep 4, 6:24 am, "Richard Cornford" <Rich...@litotes.demon.co.uk>
wrote:
<dhtmlkitc...@gmail.comwrote:
References: <Cq6dnclPf6lJHkXb4p2d...@giganews.com>
<fbcc7i$sqs$1$8300d...@news.demon.co.uk>
<1188677590.971881.225...@k79g2000hse.googlegroups .com>
<snip>
<1188854861.206995.151...@o80g2000hse.googlegroups .com>
<fbi7vh$51u$1$8300d...@news.demon.co.uk>
In-Reply-To: fbi7vh$51u$1$8300d...@news.demon.co.uk
David,

<snip>

Why have you posted a message that appears to be intended as a response
to David Flanagan as a reply to my message (Message-ID:
<fbi7vh$51u$1$8300d...@news.demon.co.uk>)?
As I was writing, I realized some things; I changed my response, as
talking about the word "use" seemed not as important as my other
point, so I dropped it, continued writing, and hit 'reply', using the
same textarea.

I use google groups UI so I don't see the headers you see. I chose
Groups' heavy, buggy, UI over trying to the digest mails. However,
groups UI has failed me again by disabling the submit button and not
enabling it when the call fails. I have to find a better way to deal w/
digest mails.

Regardless...

Directly emailing David would have been constructive; he might have
even given you props.

Moving on to a real question...

If a book is opened to a certain page a lot, or if it is laid open or
folded open, as if to facilitate extended reading, then the book will
more easily open to that page. My question is regarding the page that
you opened the book up to "at some point" (pg 60). Was pg 60 a page
that you had read thoroughly and pessimistically?

Garrett
Richard.

Sep 6 '07 #22
dh**********@gmail.com wrote:
If a book is opened to a certain page a lot, or if it is laid open or
folded open, as if to facilitate extended reading, then the book will
more easily open to that page. My question is regarding the page that
you opened the book up to "at some point" (pg 60). Was pg 60 a page
that you had read thoroughly and pessimistically?
If *you* would have read more thorough, you would have observed that
Richard commented on several, yet consecutive, pages. But your question is
irrelevant. Given that many misconceptions uncovered about the most basic
features of the language (implementation) the author has, had or just
transports to the uninitiated reader, do you really expect other pages
dealing with mu€ch more complicated matters that have to build on the
understanding of those basics to be of considerable better quality?
PointedEars
--
Prototype.js was written by people who don't know javascript for people
who don't know javascript. People who don't know javascript are not
the best source of advice on designing systems that use javascript.
-- Richard Cornford, cljs, <f8*******************@news.demon.co.uk>
Sep 6 '07 #23
dh**********@gmail.com wrote:
On Sep 6, 2:05 pm, Thomas 'PointedEars' Lahn <PointedE...@web.de>
wrote:
>dhtmlkitc...@gmail.com wrote:
>>If a book is opened to a certain page a lot, or if it is laid open or
folded open, as if to facilitate extended reading, then the book will
more easily open to that page. My question is regarding the page that
you opened the book up to "at some point" (pg 60). Was pg 60 a page
that you had read thoroughly and pessimistically?
If *you* would have read more thorough, you would have observed that
Richard commented on several, yet consecutive, pages. But your question is
irrelevant.

You could have reworded that to: "I don't see the relevance in that
question."
But I didn't. That was not to insult anyone but merely to state the fact.
Whether or not Richard opened that book on that page deliberately does not
matter, so your question (talking about insults, rather your subtle
insinuation of him lying about how he got to that page) is very irrelevant.
You may not like that, but there it is.
Given that many misconceptions uncovered about the most basic
>features of the language (implementation) the author has, had or just
transports to the uninitiated reader, do you really expect other pages
dealing with mu€ch more complicated matters that have to build on the
understanding of those basics to be of considerable better quality?
I'm reviewing David's book and am planning to email comments directly
to him.
What would that accomplish?
[...]
I have some general feedback (opinion, not errata) that others may
disagree with. I am posting it here so that others can comment on it.
Here it is:

This book should address cross-browser issues in scripting engines and
host environments (at least the popular browsers).
With regard to script engines, cross-browser issues are irrelevant. With
regard to host (or rather execution) environments, which are for example Web
browsers, I concurred if that book was named "ECMAScript Implementations:
The Definitive Guide."
There are differences between IE, FF, Opera, Safari. RegExp, FunctionExpression,
iteration using for-in, Object-literal notation, to name a handful.
True. I have created http://PointedEars.de/scripts/es-matrix because of
that, and I am not finished yet (if I ever will be).
For example:
javascript:alert( { foo: 1, } )

An error will be thrown in JScript, but not in FF.
That should read "JScript, but not JavaScript". FF is not a programming
language, it is an execution environment for the latter programming language.
It is useful to know (where, how, why, what the spec says, which browser
is wrong, how to avoid it, et c).
No browser or engine is wrong here, because the specification explicitly
allows such deviations for conforming implementations per its Conformance
section (which is IMHO one problem with the specification: it allows too
much deviation from it). In this case (and with Array literals) that
deviation can be handled easily by avoiding the trailing comma.
Where such issues exist, they should be explained which browsers,
"Which browsers" can be easily covered by mentioning which browser (version)
implements which version of which language, and then explaining the features
of the language (version).
why they exist (if known), what implications it has, how it deviates from
the spec, and an example should be provided. This can also greatly
benefit js programmers who can complain to the relevant vendors.
Non sequitur, see above.
For example, surprisingly few people are aware that for-in iteration is
broken in IE due to a faulty implementation of DontEnum.
Since I don't use for..in much, and don't write primarily for IE, IIRC
that has never occurred to me. Could you give an example, please?
This is well-known among experts, but not everyone else.
Hmmm.
I have seen many competent and intelligent programmers trip on this bug.
I haven't, and I am not exactly new to the topic or the industry.
[...]
I would like to encourage others to also submit feedback to David (his
email address appears earlier in this thread).
Again, to what end? Given the Law of Knowledge[tm] I have proposed here
recently, would that not mean that there is much greater a chance that only
further misconceptions would enter into the book this way?

I agree with Richard here; it would be much better if comments on that book
would be posted here, so that they are seen by many eyes. That way,
everyone learned.
There is a lot of knowledge in this group (and misinformation, too).
If we can stop insulting each other, it could be a very productive way
to share knowledge.
JFTR: I don't like personal attacks either (against anyone), and I try not
to post in that way.

But some people take everything personal, don't have or don't show that
basic sense of humor, and thus are easily pissed off by any comment they
receive. They really should not subscribe to or even post to a technical
group like this, because it's hard facts we are dealing with even when
it's only software. (You may quote me on that.)
If this is a hostile place, I'm afraid David won't have much
motivation to return. And he's not the only one.
I fail to see anything hostile in proving things to be wrong.
The next version of the book will most likely have to cover ES4.
That should read "unlikely", trust me.
PointedEars
--
"Use any version of Microsoft Frontpage to create your site. (This won't
prevent people from viewing your source, but no one will want to steal it.)"
-- from <http://www.vortex-webdesign.com/help/hidesource.htm>
Sep 7 '07 #24
Richard Cornford wrote:
<snip>
>For example, surprisingly few people are aware that for-in
iteration is broken in IE due to a faulty implementation of
DontEnum. This is well- known among experts,

Well, what is well known among experts is that when doing variable
instantiation in the global execution contexts JScript fails to
mark the properties added to global object by virtue of its being
the Variable object for that execution contexts with the - DontEnum
- attribute (as ECMA 262 says it should), and so they can be
subsequently enumerated by for-in loops.
Well, I got that the wrong way around. JScript's mistake is that it does
mark the properties with the - DontEnum - attribute when it should not,
so they will not be enumerated by for-in when that should be possible.
It is unlikely that they would use that knowledge to declare for-in
loops "broken" or attribute any consequences
to "a faulty implementation of DontEnum.
<snip>

Richard.

Sep 8 '07 #25

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Reply-to-group Thx | last post by:
Need to update col dated in tbl po_history from col date_expense in tbl po_expenses. Have tried, back ticks, single quotes, no quotes, etc. left join and no join. No joy. Results is consistent...
14
by: John | last post by:
Hi all, I am doing the change from having worked in Oracle for a long time to MS SQL server and am frustrated with a couple of simple SQL stmt's. Or at least they have always been easy. The...
0
by: SLACK Incorporated LISTSERV Server (14.3) | last post by:
Your message dated Sat, 3 Feb 2007 10:40:10 -0500 with no subject has been submitted to the moderator of the IDN-L list: IDN-SysAdmin@SLACKINC.COM.
0
by: Dartmouth College LISTSERV Server (15.0) | last post by:
Your message dated Wed, 21 Mar 2007 13:15:54 +0100 with subject "Returned mail: see transcript for details" has been submitted to the moderator of the CLASS-84 list: Martha Hartfiel '83...
0
by: Cindy Huyser | last post by:
I have an Access 2000 database behind a threaded Java application that that can have have concurrent access to the same table (but not the same record). The database is set up for shared access...
5
by: logina1 | last post by:
hi all, This command update table1 set col4 = rownum; updates all the records with auto increment number.But i want to increment based on date. i.e when the date changes it need to start from 1....
20
by: FAQEditor | last post by:
FAQ Version 9.86 Dated 2007-10-03 has been uploaded. Most changes are cosmetic and some typo corrections. -- Randy comp.lang.javascript FAQ - http://jibbering.com/faq/index.html FAQ Notes:...
0
by: SuzK | last post by:
I am trying to calculate in VBA in Access 2002 a moving average and update a table with the calculations. Fields in my WeeklyData table are Week Ending (date) ItemNbr (double) Sales Dollars...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.