Downloading Haxe 2.3.0

If your download does not begin automatically please click here.

Support the Haxe Foundation

Thank you for downloading Haxe. If you'd like to support the Haxe Foundation please consider donating to keep our open source efforts thriving.

Monthly Donation Amount

Get Technical Help

Get support directly from the Haxe team. The Haxe Foundation offers several support tiers to help with your organization's technical challenges.

Explore our support plans

What next?

Change Log

  • optimized Type.enumEq : use index instead of tag comparison for neko/flash9/php
  • bugfix for flash.display.BitmapDataChannel and GraphicsPathCommand (allow inline static)
  • resolve environment variable in -cmd commands
  • added flash.Vector.indexOf and lastIndexOf
  • fixed bug in interfaces that define the method toString (haXe/PHP)
  • fixed bug in haxe.io.BytesInput.readBytes in Flash9 (was throwing Eof if full buffer can't be readed)
  • fixed implements/extends special classes when they are imported
  • StringBuf now uses an array for JS implementation (around same on FF, faster on IE)
  • fixed assignment of field length in anonym objects (haXe/PHP)
  • fixed addEventListener typing for flash9
  • fixed vector generation for AS3 target
  • fix with inline functions : position is now the inserted position and not the original one (better error reporting)
  • added SWC output support
  • fixed issues with unset of values in for loops and executing blocks that return functions (haXe/PHP)
  • "throw" type is now Unknown instead of Dynamic (prevent type-hole in "if A else if B else throw")
  • added foreach for flash9/as3
  • fixed f9 verify error with different kind of functions
  • moved eof() from neko.io.FileOutput to FileInput
  • added haxe.rtti.HtmlEditor
  • added neko.db.Manager.setLockMode
  • genAS3 : fixed Error classes issues
  • genAS3 : fixed default basic type value in interfaces
  • flash9 : fixed UInt default parameter verify error
  • flash9 : fixed issue with flash.* string enums verify error
  • compiler : allowed \r line separators for HXML files
  • flash9 : fixed verify error with loop variable beeing a specific class
  • compiler : prevent truncating float dynamic values to int when using numerical operations
  • neko.db.Manager fix : synchronize fields after locking an unlocked cached object
  • compiler : fixed issue with cascading inline+haxe.rtti.Generic
  • optimizer : reduce constant int/float/bool expressions and immediate function calls
  • flash9/as3/php : don't add Boot.skip_constructor test if no side effects in constructor
  • compiler : added --no-opt to disable expr reduction
  • compiler : separated basic and advanced commandline options
  • compiler : fixed printing of sub-function types
  • genHX : fixed generation of classes that extends another class (shouldn't be turned into enums)
  • speedup Array.remove on flash9/js

Getting Started With Haxe

Now that you've downloaded Haxe, you can get started with a specific platform. Click on a logo to learn how to set up the development environment and how to proceed from there:

For getting started with Haxe, take a look at our introduction, read through the Haxe Manual or look at these use cases for Haxe, including tutorials and popular libraries: