types

Peter Michaux petermichaux at gmail.com
Thu Aug 14 06:14:26 PDT 2008


On Thu, Aug 14, 2008 at 12:33 AM, Brendan Eich <brendan at mozilla.org> wrote:
> On Aug 13, 2008, at 11:37 PM, Peter Michaux wrote:

[snip]

>> Your points 1-4 above and the differences of opinion and preferences
>> seem to be a big obstacle to overcome in a committee by consensus.
>
> We shall see. The committee now has the chance to reason together, to
> understand one anothers' positions and state them fairly. This happened in
> Oslo more than in any past meeting, IMHO. This is grounds for greater hope
> than I had before Harmony.
>
> It's possible we'll get just (1) and (2), but we discussed legitimate
> use-cases for all of (1-4) in Oslo. Time preference for a successor spec
> will help defer the less useful ideas, if we work together well.
> Implementation before standardization, and user-testing, will help.
>
> There's no silver bullet, but what's the alternative? Rejectionist clinging
> to ES3-till-2018?

I want the language to move forward also. It seems as though the ES4
of a year ago bit off too much and various pieces have been dropping
slowly over time. The recent news makes it seem like the group has
decided to take a fresh look at a much smaller set of goals for
Harmony. If getting a new major revision of ECMAScript out is
important in a timely fashion then perhaps the whole types and classes
part doesn't belong in Harmony? The Harmony version, which I suppose
will be numbered "4" already stands to be very different from ES3.

* New standard format with improved clarity
* Reference implementation
* programming in the small changes (destructuring, let, rest argument, ||=, etc)
* new object properties (e.g. Array extras)

these additions to the language directly address things that
programmers are working around daily. If a standard could be completed
sooner, and have Microsoft's agreement and implementation, that may be
more valuable than waiting to get consensus on the type/classes issue
which would also take longer to implement.

It seems to me that the parts of JavaScript which have kept it
relevant over the years have been the parts it shares with Scheme:
garbage collection, lambdas, untyped variables. If it hadn't been for
these features, I think projects like GWT would have sprung up earlier
to abstract away what would be a very painful experience programming
directly in JavaScript. It seems natural to me to build on that
success of borrowing from Scheme with the Array extras and let, for
example. Proper tail calls were another feature generally agreed to be
in ES4 for a long time but dropped in favor of type-checks and I hope
tail calls make a return, as you know.

With regard to the types/classes issue, has anyone proposed a solution
to the multiple window problem in my original post where an object is
created in one window and its type is being tested or compared with
similar objects created in another window? If that problem cannot be
solved elegantly, isn't the whole types/classes issue a bit of a dud
anyway? The whole point of types is to be able to identify an object
by it's type and if that cannot be done across windows it seems to be
a big problem to me.

[snip]

Peter



More information about the Es-discuss mailing list