haXe Introduction
haXe (pronounced as hex) is an open source programming language
While most other languages are bound to their own platform (Java to the JVM, C# to .Net, ActionScript to the Flash Player), haXe is a multiplatform language.
It means that you can use haXe to target the following platforms :
- Javascript : You can compile a haXe program to a single
.jsfile. You can access the typed browser DOM APIs with autocompletion support, and all the dependencies will be resolved at compilation time. - Flash : You can compile a haXe program to a
.swffile. haXe is compatible with Flash Players 6 to 10, with either "old" Flash 8 API or newest AS3/Flash9+ API. haXe offers very good performance and language features to develop Flash content. - NekoVM : You can compile a haXe program to NekoVM bytecode. This can be used for server-side programming such as dynamic webpages (using
mod_nekofor Apache) and also for command-line or desktop applications, since NekoVM can be embedded and extended with some other DLL. - PHP : You can compile a haXe program to
.phpfiles. This will enable you to use a high level strictly-typed language such as haXe while keeping full compatibility with your existing server platform and libraries. - C++ : You can now generate C++ code from your haXe source code, with the required Makefiles. This is very useful for creating native applications, for instance in iPhone development.
- C# and Java targets are coming soon! (from @cwaneck)
The idea behind haXe is to let the developer choose the best platform for a given job. In general, this is not easy to do, because every new platform comes with its own programming language. What haXe provides you with is:
- a standardized language with many good features
- a standard library (including
Date,Xml,Math...) that works the same on all platforms - platform-specific libraries : the full APIs for a given platform are accessible from haXe
haXe is useful for many different reasons. You might be wondering why use haXe?
Want to learn more about haXe ? Access the documentation.
version #10299, modified 2011-03-11 11:17:12 by stickupkid