Introducing haXe Software Freedom Day HK 2011         Andy Li     blog.onthewings.net
what is haXe?● opensource● programming language● compiler● multi-target! compiling to:   ○ Flash(swf)   ○ AS3   ○ JS   ○ P...
haXe programming languageTest.hx ● ECMAScript-like     ○ similar to AS3/JS ● type system: strong + dynamic ● OOP (and FP!)
haXe programming languageTest.hx ● type inference ● iterator ● generic type
haXe programming language● inlining● enum● metadata● macros● remoting● ORM (SPOD)● ...
haXe tools● haXe compiler   ○ VERY fast   ○ code-completion API for IDE integration● haxelib   ○ opensource library packag...
haXe libraries
NMEhttp://www.haxenme.org/haxelib install nme ● Neko Media Engine ● Flash-API for C++/Neko target ● desktop    ○ Windows  ...
Jeashhttp://jeash.com/haxelib install jeash ● Flash-API for JS target ● using HTML5 (canvas)
hxOpenFrameworkshttp://github.com/andyli/hxOpenFrameworkshaxelib install hxOpenFrameworks ● openFramework binding for C++ ...
HxSL● haXe Shader Language● using haXe macros & metadata● compiles to AGAL for Flash 11● probably compiles to GLSL/HLSL so...
FAQ
performance?● Evaluating spritesheet animations on mobile  NME(haXe/C++) vs Corona(Lua) vs Flash/Air(AS3)● Multi-Language-...
target platform libraries? ● Flash    ○ RobotLegs (RobotHaxe)    ○ GTween (GTweenHX)    ○ Actuate    ○ Flixel (Flixel-Haxe...
target platform libraries? ● JS    ○ jQuery (both as 3rd party and core)    ○ Dojo Toolkit (bdog-dojo)    ○ Modernizr (haX...
IDE?● FlashDevelop● FDT● more...
community?● mailing list    ○ top haXe devs● Twitter    ○ #haxe● blogs    ○ a list of them    ○ haXe roundup
Question?
Upcoming SlideShare
Loading in …5
×

Introducing haXe

2,600 views

Published on

Introducing haXe, the opensource multi-target language at Software Freedom Day 2011, Hong Kong

alt url: https://bit.ly/sfdhk-haxe

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,600
On SlideShare
0
From Embeds
0
Number of Embeds
354
Actions
Shares
0
Downloads
22
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Introducing haXe

  1. 1. Introducing haXe Software Freedom Day HK 2011 Andy Li blog.onthewings.net
  2. 2. what is haXe?● opensource● programming language● compiler● multi-target! compiling to: ○ Flash(swf) ○ AS3 ○ JS ○ PHP ○ C++ ○ Neko ○ Java ○ C# demo: HaXenstein
  3. 3. haXe programming languageTest.hx ● ECMAScript-like ○ similar to AS3/JS ● type system: strong + dynamic ● OOP (and FP!)
  4. 4. haXe programming languageTest.hx ● type inference ● iterator ● generic type
  5. 5. haXe programming language● inlining● enum● metadata● macros● remoting● ORM (SPOD)● ...
  6. 6. haXe tools● haXe compiler ○ VERY fast ○ code-completion API for IDE integration● haxelib ○ opensource library packaging tool ○ eg. haxelib install project-name
  7. 7. haXe libraries
  8. 8. NMEhttp://www.haxenme.org/haxelib install nme ● Neko Media Engine ● Flash-API for C++/Neko target ● desktop ○ Windows ○ Mac ○ Linux ● mobile ○ iOS ○ Android ○ WebOS
  9. 9. Jeashhttp://jeash.com/haxelib install jeash ● Flash-API for JS target ● using HTML5 (canvas)
  10. 10. hxOpenFrameworkshttp://github.com/andyli/hxOpenFrameworkshaxelib install hxOpenFrameworks ● openFramework binding for C++ target ● for creative coding, eg. generative art, installation art ● desktop only at the moment ○ Windows ○ Mac ○ Linux
  11. 11. HxSL● haXe Shader Language● using haXe macros & metadata● compiles to AGAL for Flash 11● probably compiles to GLSL/HLSL soon● HxSL Studio
  12. 12. FAQ
  13. 13. performance?● Evaluating spritesheet animations on mobile NME(haXe/C++) vs Corona(Lua) vs Flash/Air(AS3)● Multi-Language-Bench haXe/C++ vs C++ vs Java● AS3 vs haXe performance benchmark with animated fractal● More HTML5 & HaXe Speed Tests haXe/JS is faster than plain JS!?
  14. 14. target platform libraries? ● Flash ○ RobotLegs (RobotHaxe) ○ GTween (GTweenHX) ○ Actuate ○ Flixel (Flixel-Haxe / HaxeFlixel) ○ FlashPunk (HaxePunk) ○ CasaLib (CasaHx) ● C++ ○ wxWidgets(waxe)
  15. 15. target platform libraries? ● JS ○ jQuery (both as 3rd party and core) ○ Dojo Toolkit (bdog-dojo) ○ Modernizr (haXe-modernizr) ○ Node.js (bdog-node) ○ Titanium (desktop / mobile) ○ RaphaëlJS (raphaelExtern)
  16. 16. IDE?● FlashDevelop● FDT● more...
  17. 17. community?● mailing list ○ top haXe devs● Twitter ○ #haxe● blogs ○ a list of them ○ haXe roundup
  18. 18. Question?

×