Recs.
Updated
Haxe is an open-source strictly typed programming language, that transpiles into multiple programming languages. You can use Haxe to target many different platforms, like Java, Javascript, PHP, Python, Actionscript 3 or Flash SWF. It also supports transpilation to C++, C# or Lua.
You can use the same code for frontend and backend logic (e.g. Javascript for frontend and PHP for backend) without having to use the same target language. Data structures, algorithms, input validation can all come from the same source code.
Haxe comes with a standard library that provides a uniform API accross all supported targets platform, while also enabling easy access to native features of a specific platform.
SpecsUpdate
Pros
Pro Provides an exit strategy for Flash developers through OpenFl
OpenFl is a library written in Haxe, that duplicates the Flash API, by providing a parallel implementation.
Haxe's syntax has a lot of similarities with Actionscript 3.
Flash developers can easily migrate their code to Haxe while still using and targeting Flash, in addition to unlocking all the new targets supported by Haxe / OpenFl.