On May 13, 2010, at 11:09 PM, Oliver Hunt wrote:

> 
> On May 13, 2010, at 10:21 PM, Alex Russell wrote:
> 
>> On May 13, 2010, at 5:15 PM, Vladimir Vukicevic wrote:
>> 
>>> This is difficult to do, given the goals of typed arrays -- they wouldn't 
>>> behave like normal Arrays in most meaningful ways.
>> 
>> Sounds like a bug to be fixed ;-)
>> 
>>> At the core, an ArrayBuffer is of fixed size, and it doesn't make sense to 
>>> index an ArrayBuffer directly (because there's no indication of what format 
>>> the data should be accessed in). Making the array view types instances of 
>>> Array might work, but again given that they're fixed length, there's a 
>>> significant difference there. 
>> 
>> 
>> That the length property of a particular array subclass leaves the 
>> constructor non-configurable and read-only isn't much of a trick in ES5. 
>> That said, why *doesn't* TypedArray spec a mutable variant? Surely it'd be 
>> useful.
> 
> The data is mutable, the length is not -- this is more in line with arrays in 
> other languages, but more importantly the whole point of the typed array spec 
> was to provide a compact typed storage mechanism.  Allowing the length to be 
> changed runs counter to this as it effectively puts us back in the position 
> of supporting sparse arrays.


To be clear, I'm supportive of a fixed-length array type for efficient handling 
of byte types. I'm *also* in favor of supporting mutable-length arrays for 
these types as well, perhaps as a separate subtype of Array or a type that 
shares some traits but not others. I get the need to optimize the case of "I'm 
representing a buffer somewhere in some C code and need to do it as fast as 
possible", but I just don't think that should be the exclusive use of 
relatively efficient byte arrays, even if it's the one that's motivating WebGL 
at the moment.

Regards

--
Alex Russell
[email protected]
[email protected] BE03 E88D EABB 2116 CC49 8259 CF78 E242 59C3 9723

_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to