Hi Fascinating! I had reviewed the AS4 proposal (a long time ago now), so I wondered whether that might be worth checking to see if any of their ideas would be worth incorporating now? See [1]
A couple of thoughts from the document: Optional fields in interfaces: I think the way the Actionscript VM works means that you do need slots reserved for the interface members, but I don’t think there is a check done when the SWF is loaded initially. So this would just be a problem if/when someone tried to use an interface function that wasn't actually implemented, most likely the Flash Player/AIR would throw a VerifyError. We could hack around some ABC to see whether this is the case in practice, perhaps..! Functions with static methods: that's an interesting oddity.. but I can't see anything in avmplus that would enforce this just for 'String' or 'Array' functions. When you compile "a = Array(1,2,3)" you get a 'getlex' instruction to get the Array 'function' and then it's called with the arguments; when you compile "a = new Array(1,2,3)" you get a 'constructprop' call instead. So the compiler seems to be doing something different, but I don't think there's much difference happening within the virtual machine. Again, might be worth hacking about a little to see whether this is valid and it's just the compiler preventing it... Arrow functions: this is just a compiler change, the definition of the language itself wouldn't change (so yes, as Carlos says, we can change the compiler for this..) Interesting area :-) cheers Andrew [1] https://github.com/adobe-research/ActionScript4 -----Original Message----- From: Carlos Rovira [mailto:[email protected]] Sent: 11 January 2019 09:49 To: [email protected] Subject: [EXTERNAL] Re: AS3 Language Features Hi Harbs, very interesting. And I think something all here wants. Since we own the compiler, I think we can do as much as we want. Don't have much time now, but I think most of the things I want are already considered in the document (typed Arrays, Generics...). I think AS3 needs those improvements to be considered along with current main stream languages like TypeScript and haXe. So Great! :) El vie., 11 ene. 2019 a las 3:40, Alex Harui (<[email protected]>) escribió: > FWIW, we already support source externs. > > On 1/10/19, 2:38 PM, "Harbs" <[email protected]> wrote: > > I very much would like for AS3 to get an upgrade with features. > That applies to improvements I the compiler output as well as truly > new features in the language. > > I’ve started some discussion with Josh on the topic, and we > started a Google doc to use to help figure out how we can > incrementally improve things. > > The link to the Google Doc is here: > https://clicktime.symantec.com/382sqJFswPJA6S7Nyg4RYvY7Vc?u=https%3A%2 > F%2Fna01.safelinks.protection.outlook.com%2F%3Furl%3Dhttps%253A%252F%2 > 52Fdocs.google.com%252Fdocument%252Fd%252F188AAeny3y7bht9JbuE-RXIF_adZ > HP5uYj0--RANpGNM%252Fedit%253Fusp%253Dsharing%26data%3D02%257C01%257Ca > harui%2540adobe.com%257C23cdd9000eb047a61a3608d6774c65c3%257Cfa7b1b5a7 > b34438794aed2c178decee1%257C0%257C0%257C636827567358790309%26sdata%3DJ > Kz7zftxQMkt9o3DPwoqK5xYh8u546a%252Ff0AAtLKc1xQ%253D%26reserved%3D0 > < > https://clicktime.symantec.com/382sqJFswPJA6S7Nyg4RYvY7Vc?u=https%3A%2 > F%2Fna01.safelinks.protection.outlook.com%2F%3Furl%3Dhttps%253A%252F%2 > 52Fdocs.google.com%252Fdocument%252Fd%252F188AAeny3y7bht9JbuE-RXIF_adZ > HP5uYj0--RANpGNM%252Fedit%253Fusp%253Dsharing%26data%3D02%257C01%257Ca > harui%2540adobe.com%257C23cdd9000eb047a61a3608d6774c65c3%257Cfa7b1b5a7 > b34438794aed2c178decee1%257C0%257C0%257C636827567358790309%26sdata%3DJ > Kz7zftxQMkt9o3DPwoqK5xYh8u546a%252Ff0AAtLKc1xQ%253D%26reserved%3D0 > > > > I enabled commenting. If someone wants edit access to the > document, please let me know. > > Thanks, > Harbs > > -- Carlos Rovira https://clicktime.symantec.com/3RfjSKYPAhcxAu1UQ1kfrf77Vc?u=http%3A%2F%2Fabout.me%2Fcarlosrovira
