<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general">
    <title>gmane.comp.lang.javascript.ecmascript4.general</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18430"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18429"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18428"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18427"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18426"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18425"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18424"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18423"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18422"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18421"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18420"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18419"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18418"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18417"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18416"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18415"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18414"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18413"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18412"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18411"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18430">
    <title>Internationalization API: Collator sensitivity</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18430</link>
    <description>&lt;pre&gt;In recent discussions between Markus Scherer, Nebojša Ćirić, Mark Davis (Google), Eric Albright (Microsoft) and myself, a few issues around the sensitivity option of the Collator constructor in the ECMAScript Internationalization API [1, section 11.3.2] have come up. It would be good to get input from a wider audience.

1) The "variant" sensitivity: This name isn't very descriptive. When "variant" is selected, a collator has to take all differences between input strings into account that it considers at the "case" and "accent" levels; it may consider additional differences. New names have been proposed:
- "accent+case": mnemonic, but doesn't indicate that additional differences may be considered.
- "common"
- "normal"
- "default": doesn't work because it's not actually the default in all cases.
- "full": doesn't work because implementations aren't required to take all differences into consideration.
- "distinct", "dissimilar", "varied", "inherent", "intrinsic", "essential": not really descriptive.

An alt&lt;/pre&gt;</description>
    <dc:creator>Norbert Lindenberg</dc:creator>
    <dc:date>2012-05-16T21:34:05</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18429">
    <title>Re: "Remaining Hazards and Mitigating Patterns of Secure Mashups inECMAScript 5"</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18429</link>
    <description>&lt;pre&gt;On Tue, May 15, 2012 at 11:45 PM, Brandon Benvie
&amp;lt;brandon-cj2k9yrovAx2xNJEPvMZDgC/G2K4zDHf&amp;lt; at &amp;gt;public.gmane.org&amp;gt;wrote:



What does

    [06:40:52.788] Error: Failed to preserve wrapper of wrapped native weak
map key. &amp;lt; at &amp;gt; http://bbenvie.com/lab/shadow/meta-objects.browser.js:947

mean? I saw this as the first thing on the console when run on FF
Nightly 15.0a1 (2012-05-05)

&lt;/pre&gt;</description>
    <dc:creator>Mark S. Miller</dc:creator>
    <dc:date>2012-05-16T13:44:52</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18428">
    <title>Re: "Remaining Hazards and Mitigating Patterns of Secure Mashups inECMAScript 5"</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18428</link>
    <description>&lt;pre&gt;Sorry, not the first thing on the console. I didn't notice the setting of
the scroll bar elevator.

On Wed, May 16, 2012 at 6:44 AM, Mark S. Miller &amp;lt;erights-hpIqsD4AKlfQT0dZR+AlfA&amp;lt; at &amp;gt;public.gmane.org&amp;gt; wrote:




&lt;/pre&gt;</description>
    <dc:creator>Mark S. Miller</dc:creator>
    <dc:date>2012-05-16T13:46:30</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18427">
    <title>Re: "Remaining Hazards and Mitigating Patterns of Secure Mashups inECMAScript 5"</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18427</link>
    <description>&lt;pre&gt;http://bbenvie.com/lab/shadow is an example of what you can do using
Proxies (look in the console). That's loading jQuery (unmodified) into a
membrane wrapping everything.
_______________________________________________
es-discuss mailing list
es-discuss-4eJtQOnFJqFAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org
https://mail.mozilla.org/listinfo/es-discuss
&lt;/pre&gt;</description>
    <dc:creator>Brandon Benvie</dc:creator>
    <dc:date>2012-05-16T06:45:32</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18426">
    <title>Re: "Remaining Hazards and Mitigating Patterns of Secure Mashupsin ECMAScript 5"</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18426</link>
    <description>&lt;pre&gt;Finally I could hear the talk (++ "too bad that the end is missing")

Then I took a look mainly at domado.js, startSES.js, repairES5.js

Quite clever, but quite complicate...

I did focus on cajaVM.eval and tried to theorically follow its process 
with an example as described below, with some small simplifications 
since security is one thing but the final result of VM processing 
(whether security is involved or not) is interesting too

Maybe it will be undigest for other readers since it is difficult to 
summarize if you do not have all the code, but again it's quite smart as 
js allows (even if I have some doubts about performances with all the 
getters and setters, and even with proxies being added later to help 
this), I hope my understanding is correct, the exercise is not just a 
"vue de l'esprit", I have something in mind since some time related to 
this and other things that I might submit, maybe to simplify a little bit.

function compileExpr(exprSrc, opt_sourcePosition) {
   var wrapperSrc = secur&lt;/pre&gt;</description>
    <dc:creator>Aymeric Vitte</dc:creator>
    <dc:date>2012-05-15T22:26:38</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18425">
    <title>Re: catch vs function scope; var declaration vs initialization</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18425</link>
    <description>&lt;pre&gt;
Thanks for pointing this out. It is a fairly recent regression. I used 
`hg bisect` to find it and filed

https://bugzilla.mozilla.org/show_bug.cgi?id=755099

I agree with Allen, we should clear this dark corner of the deck with 
vigorous application of early-error solution and scrub in nightly builds 
to prove no real code relies on var e; inside catch (e) {...} hoisting.

/be
&lt;/pre&gt;</description>
    <dc:creator>Brendan Eich</dc:creator>
    <dc:date>2012-05-15T00:09:00</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18424">
    <title>Re: catch vs function scope; var declaration vs initialization</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18424</link>
    <description>&lt;pre&gt;
On May 14, 2012, at 2:44 PM, Claus Reinke wrote:

An analogy with inner functions isn't needed and wouldn't be correct.  This is simply appling the static semantics of Block level declarations. A Block  is not allowed to var declare (including via nested blocks) any identifier that is lexically declared in the block (but not including nested blocks).

function f() {
   try { throw "hi"
   } catch (e)  {
      var v;
   };
}

is legal and binds "v" at the top-level of function f.  If the catch clause was treated like an anonymous function, "v" would be bound at the level of the catch clause.  It isn't...

In terms of scope contours the above is equivalent to 

function f() {
  {  //throw "hi"
     }
  {
      let e;
      var v;
   }
}

Allen




_______________________________________________
es-discuss mailing list
es-discuss-4eJtQOnFJqFAfugRpC6u6w&amp;lt; at &amp;gt;public.gmane.org
https://mail.mozilla.org/listinfo/es-discuss
&lt;/pre&gt;</description>
    <dc:creator>Allen Wirfs-Brock</dc:creator>
    <dc:date>2012-05-14T22:14:59</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18423">
    <title>Re: catch vs function scope; var declaration vs initialization</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18423</link>
    <description>&lt;pre&gt;
Yes, please!-)


'let' vs 'var' would have been my next question. Good to
know that this particular issue does not propagate to 'let'!


Even better!-) And in line with treating catch as an anonymous function.

Claus

&lt;/pre&gt;</description>
    <dc:creator>Claus Reinke</dc:creator>
    <dc:date>2012-05-14T21:44:19</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18422">
    <title>Re: catch vs function scope; var declaration vs initialization</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18422</link>
    <description>&lt;pre&gt;
In "practice" (as in: what implementations permit; not: what is used),
there is also this variation:

try { throw "oops" }
catch (f) {
    function f() { console.log(f) }
    console.log(f)
}
console.log(f)

This isn't permitted in ES5, and 'f' would be block-scoped if permitted
in ES6. In common non-standard extensions to ES5, the function and
references to 'f' in its body are bound outside the catch. I don't even
want to look at what happens with a function declaration in a catch
where the body references the catch parameter..

I'm currently looking at these edge cases for implementing
renaming (program transformation) - no fun.


Which means that the single occurrence of 'e' in 'var e = "ho"' is bound
to two different scopes: outside the catch for creating a binding, in the
catch for assignment. As Allen anticipated, I was wondering about the
effects on mixing 'let' and 'var', too.

Claus
 &lt;/pre&gt;</description>
    <dc:creator>Claus Reinke</dc:creator>
    <dc:date>2012-05-14T21:43:31</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18421">
    <title>Re: Concise Function Body</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18421</link>
    <description>&lt;pre&gt;
On May 14, 2012, at 9:53 AM, Brendan Eich wrote:


AssignmentExpression :
   ...
   ArrowFunction

ArrowFunction :
   ArrowParameter =&amp;gt; ConciseBody




&lt;/pre&gt;</description>
    <dc:creator>Allen Wirfs-Brock</dc:creator>
    <dc:date>2012-05-14T17:08:07</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18420">
    <title>Re: Concise Function Body</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18420</link>
    <description>&lt;pre&gt;I'm pretty sure there was some discussion about this on some thread, but it may have been fleeting...

Concise methods (http://wiki.ecmascript.org/doku.php?id=harmony:concise_object_literal_extensions#methods ) have been proposals for quite some time.

When I added ArrowFunctions into the draft, it seemed to make sense to consistently apply them to the other new function definition form (concise methods) that we already had added. Once that was done, it also made sense, from a consistency standpoint, to permit them for get/set properties.

This means there is a simple rule: function definition using the keyword function always have a bracketed body.  All other forms of function definition use ConciseBody which allows for either an assignment expression or a bracketed body.

I'm happy to debate this if there is any disagreement, that's why we have spec. drafts.  Nothing is set in stone.  

Allen



On May 14, 2012, at 9:31 AM, Erik Arvidsson wrote:


all fixed...

_____________________________________________&lt;/pre&gt;</description>
    <dc:creator>Allen Wirfs-Brock</dc:creator>
    <dc:date>2012-05-14T16:53:50</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18419">
    <title>Re: Concise Function Body</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18419</link>
    <description>&lt;pre&gt; From where is this produced? It's unsound if from MemberExpression 
(ES1-5) or PrimaryExpression (ES6) -&amp;gt; FunctionExpression -&amp;gt; ... ConciseBody.

/be

Erik Arvidsson wrote:
&lt;/pre&gt;</description>
    <dc:creator>Brendan Eich</dc:creator>
    <dc:date>2012-05-14T16:53:42</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18418">
    <title>Concise Function Body</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18418</link>
    <description>&lt;pre&gt;The latest ES6 draft introduced the notion of a concise function body
and it is being used for arrow functions as well as for methods and
set/get accessors.

Grammar:

ConciseBody :
  [lookahead does not include { ] AssignmentExpression
  { FunctionBody }

Example:

var object = {
  get x() this._x,
  set x(v) this._x = v,
  method() this._x
};

I don't remember us ever discussing this change?

Personally I think it makes things more consistent since concise
function bodies are allowed in ArrowFunction but I've heard people
complain about it already.

p.s. Allen, the spec draft has a bunch of ConsiseBody typos.

&lt;/pre&gt;</description>
    <dc:creator>Erik Arvidsson</dc:creator>
    <dc:date>2012-05-14T16:31:48</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18417">
    <title>Re: catch vs function scope; var declaration vs initialization</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18417</link>
    <description>&lt;pre&gt;
I believe that -- if we had any practical way to measure this --
'most' web developers would expect 'ho undefined hu'. This is the
sensible output, the one given by ie9. It is sensible because the
simple synopsis of the funky var rules is "variables get values when
assignments are executed".  In my opinion the spec-ed answer here is
less useful to developers than the ie9 answer.  It may be true that
specifications which allowed the sensible answer would result in other
more serious nonsense of course.

jjb


&lt;/pre&gt;</description>
    <dc:creator>John J Barton</dc:creator>
    <dc:date>2012-05-14T16:24:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18416">
    <title>Re: catch vs function scope; var declaration vs initialization</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18416</link>
    <description>&lt;pre&gt;undefined undefined hu 

is what should be produced according to the spec. 

Divergence among implementations is a good sign that there is an opportunity to clean up this particular mess. 

The current ES6 draft requires an early error for this function because it is trying to hoist a var declaration across a block-level declaration of the same identifier.  EG,

function f() {
    {
        let x=1;  //early error let declaration of x in a block that contains a nested var declaration of x
        {
             var x=2;
        }
    }
}

Because let is a new feature, this restriction doesn't introduce any backwards compatibility issues. However, for consistency, the draft also currently applies the same let declaration restrictions to catch parameters.  Your experiment suggests that that we might actually be able to to that ...

Allen





On May 14, 2012, at 2:57 AM, Claus Reinke wrote:

&lt;/pre&gt;</description>
    <dc:creator>Allen Wirfs-Brock</dc:creator>
    <dc:date>2012-05-14T15:50:17</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18415">
    <title>Re: Reflect.parse (from RE:typeof null)</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18415</link>
    <description>&lt;pre&gt;
I was merely stating my personal impression. It is difficult to pin
down all the bits of information that contributed to that impression,
but here are some of them:

- not all JS parsers document their AST, but it appears that the 
    SpiderMonkey AST has the largest number of (partial) 
    implementations; most parsers have their own AST (jslint
    and jshint might share their AST by forking) but
    SpiderMonkey, esprima, PanPG, reflect.js, jstr
    all refer to the same AST document.

    Of those, esprima seems the most active. The combination of
    Reflect.parse awareness and esprima being an efficient cross-
    browser implementation is certainly the reason why I think 
    that this AST spec is in the process of winning.

- even though I've moved to JS relatively recently, I've already
    worked with 3 different JS parsers and have written one myself; 

    it just isn't funny anymore: all of them had different ASTs
    and varying support, and I was still missing out on one popular
    JS pars&lt;/pre&gt;</description>
    <dc:creator>Claus Reinke</dc:creator>
    <dc:date>2012-05-14T10:48:02</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18414">
    <title>Re: catch vs function scope; var declaration vs initialization</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18414</link>
    <description>&lt;pre&gt;

That was my analysis as well.

§10.5 tells us that `var` creates bindings in the anonymous function's
environment, so the function's env has `e`, `o`, and `u` bindings.

§12.14 tells us that within the `catch`, a new environment is created with
the function's environment being the parent. So the assignment to `e` is to
the `catch`'s `e`, not the function's.

Annotating that code a bit:

(function(){
    var e; // Where these actually happen
    var o;
    var u;

    try {
        throw "hi";
    } catch (e) {
        e = "ho"; // Assigns to the `catch` env's `e`
        o = "hu"; // Assigns to the function's `o`
        console.log(e);
    }
    console.log(e, u, o); // Expect undefined undefined "hu"

}());

&lt;/pre&gt;</description>
    <dc:creator>T.J. Crowder</dc:creator>
    <dc:date>2012-05-14T10:25:07</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18413">
    <title>Re: catch vs function scope; var declaration vs initialization</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18413</link>
    <description>&lt;pre&gt;
Inside the catch, the catch-scope is first for reading and writing.
But the catch scopes are ignored for declaring new variables. So your
expectation seems to be the correct one. `e` is created in the scope
of the anonymous function. Likewise, `o` and `u` are created in that
scope too (so neither throw at the second console.log). "ho" is
assigned to the catch-scope `e`, since that's the first scope in the
scope traversal lookup at that point. Catch scopes are weird, yo.

- peter
&lt;/pre&gt;</description>
    <dc:creator>Peter van der Zee</dc:creator>
    <dc:date>2012-05-14T10:11:17</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18412">
    <title>catch vs function scope; var declaration vs initialization</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18412</link>
    <description>&lt;pre&gt;What should be the output of the following code?

(function(){

try {
  throw "hi";
} catch (e) {
  var e = "ho";
  var o = "hu";
  var u;
  console.log(e);
}
console.log(e,u,o);

}());

It seems clear that the first console.log should output 'ho'.
Implementations seem to disagree on the second console.log, 
though.

From my current understanding of the spec, I expected: 

    undefined undefined 'hu'

which I consider unfortunate; especially the first 'undefined'
was intended to demonstrate the bad effects of separating 
declaration from initialization while treating catch and function 
differently, in terms of scoping.

node, opera: undefined undefined 'hu'

firefox 12 complains: 'e is not defined'

ie 9 outputs: houndefinedhu

It looks as if firefox misses the hoisted declaration of 'e'
(it doesn't complain about 'u', only about 'e') while ie9 
somehow merges the declaration and the catch parameter.

Claus
&lt;/pre&gt;</description>
    <dc:creator>Claus Reinke</dc:creator>
    <dc:date>2012-05-14T09:57:55</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18411">
    <title>Re: The new operator</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18411</link>
    <description>&lt;pre&gt;
Indeed the primal sin in JS, a combination of "make it look like (and in 
Netscape 3 interface with [LiveConnect with] Java)" and me being in a 
hurry and taking shortcuts, is primitive types that are not rationalized 
up front as objects.

We can fix over time, though. Let typeof wither (it will die hard) and 
promulgate a constructor.name-based string-valued "type" function. But 
as Allen and I keep saying, avoid the nominal-type-overquerying 
anti-pattern, per Smalltalk.

/be
&lt;/pre&gt;</description>
    <dc:creator>Brendan Eich</dc:creator>
    <dc:date>2012-05-14T04:26:16</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18410">
    <title>Re: The new operator</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.javascript.ecmascript4.general/18410</link>
    <description>&lt;pre&gt;

I like that they can be introduced in a stepwise fashion (whenever that may be...): Numbers first, user-defined value object types later. Numbers should complement the binary data proposal nicely.

&lt;/pre&gt;</description>
    <dc:creator>Axel Rauschmayer</dc:creator>
    <dc:date>2012-05-14T02:18:20</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.comp.lang.javascript.ecmascript4.general">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.lang.javascript.ecmascript4.general</link>
  </textinput>
</rdf:RDF>

