New full Unicode for ES6 idea

Brendan Eich brendan at
Sun Feb 19 13:55:43 PST 2012

David Bruant wrote:
> Le 19/02/2012 09:33, Brendan Eich a écrit :
>> >  (...)
>> >
>> >  How is the BRS configured? Again, not via a pragma, and not by
>> >  imperative state update inside the language (mutating hidden BRS state
>> >  at a given program point could leave strings created before mutation
>> >  observably different from those created after, unless the
>> >  implementation in effect scanned the local heap and wrapped or copied
>> >  any non-BMP-char-bearing ones creatd before).
>> >
>> >  The obvious way to express the BRS in HTML is a<meta>  tag in document
>> >  <head>, but I don't want to get hung up on this point. I do welcome
>> >  expert guidance. Here is another W3C/WHATWG interaction point. For
>> >  this reason I'm cc'ing public-script-coord.
> I'm not sure a<meta>  is that obvious of a choice.

Sure, guidance welcome as noted. I probably should have started with an 
HTTP header, but then authors may prefer to set it with <meta 
http-equiv...> which is verbose:

<meta http-equiv="ECMAScript-Full-Unicode" content="1" />

We can't have

<meta http-equiv="BRS" content="1" />

as BRS is too short and obscure. It's a good joke (should 
s/switch/button/ -- the big red button was the button Elmer Fudd warned 
Daffy Duck never to press in "Design for Leaving": Anyway, whatever the header 
name it will be a pain to type the full <meta> tag.

> Unless I'm missing something, I think the same discussion can be had
> about the BRS being declared as a<meta>. Consider:
>      <script>
>      // some code that can observe the difference between BRS mode and
> non-BRS
>      </script>
>      <meta BRS>
> Should the browser read all<meta>s before executing any script? Worse:
> what if an inline script does "document.write('<meta BRS>')"?

Since I was thinking of <meta http-equiv> (possibly with a short-hand), 
your example simply puts the <meta> out of order. It can't work, so it 
should not work (console warning traffic appropriate).

In mentioning <meta> I did not mean to exclude better ideas. Obviously a 
multi-window/frame app might want a Really Big Red Switch expressed in 
one place only. Ignoring Web Apps with manifest files, where would that 
place be? Hmm, CSP...

> I think a CSP-like solution should be explored.

Good suggestion. I hope others on the lists are up-to-date on CSP.


More information about the es-discuss mailing list