Awesome! :-)
> On Jul 18, 2025, at 1:48 AM, Josh Tynjala <joshtynj...@bowlerhat.dev> wrote:
>
> Hey folks,
>
> I just wanted to highlight a new AS3 language feature that I have recently
> implemented in the Royale compiler: arrow function expressions!
>
> If you're not familiar, these were added to JavaScript a while back. Here
> are the MDN docs for the JS version:
>
> https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions
>
> Basically, they have two main advantages.
>
> 1. They have shorter syntax.
> 2. They can use the `this` variable from the enclosing function's scope.
>
> Here's a simple example:
>
> var func:Function = (name:String) => "Hello, " + name;
> func("Royale");
>
> - No function keyword (uses => instead)
> - Optional return type (it may be inferred from the return value)
> - Optional braces around the function body, if it contains a single
> expression
> - If braces are omitted, no need for a `return` keyword
>
> You could rewrite the same arrow function like this, without everything
> omitted:
>
> var func:Function = (name:String):String => {
> return "Hello, " + name;
> }
>
> Technically, this is valid too:
>
> var func:Function = name => "Hello, " + name;
>
> However, it will report a warning because the name parameter type is
> missing, so that's not recommended.
>
> --
> Josh Tynjala
> Bowler Hat LLC
> https://bowlerhat.dev/