On 1/7/19, 2:01 AM, "Olaf Krueger" <[email protected]> wrote:
Hi,
sorry for annoying you but there's something which I'd like to understand:
If I understand it correctly, the issue is caused by the recent Google
Closure thing which expects typed constructor parameters now.
If I got it right, Google Closure is used for the JS target only.
Closure is the current library that is causing this issue, but there could be
others.
So, it seems to me that this is a "JS target only" issue which is currently
resolved by Yishay's commit [1].
Even if this is maybe not nice, my understanding is that this is only needed
for the JS target, within the "COMPILE::JS" sections.
So, my question is why this issue needs to be resolved "cross-platform" for
other targets.
Is it because of an assumption that other targets may also expect typed
constructor parameters?
Not just platforms, but also runtimes. We might decide to support Blob on
other platforms. Or some future EcmaScript version will support strong-typing
in the runtime.
The other question is why we are allowing the usage of these plain objects
as parameters at all.
Alex probably already explained it but I don't get it entirely.
Is it why it would be too much overhead to create all those needed classes
and interfaces?
(In case of performance, or in case of effort, ...?).
I'd rather not define classes. The BlobPropertyBag isn't too bad, but to
create a new Event, you have to define 19 properties most of which will never
be used. The factory functions can take various numbers of these properties.
HTH,
-Alex
--
Sent from:
https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapache-royale-development.20373.n8.nabble.com%2F&data=02%7C01%7Caharui%40adobe.com%7C1119571c4b9c483650de08d674871657%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636824520875948615&sdata=NBW2oIPT52RqyOfc7A50niEPbtvqC4jN4GMnXPeVU7s%3D&reserved=0