HaXe Taming Web Development (So we can spend time on more interesting things)
HaXeTaming Web Development
(So we can spend time on more interesting things)
motivationcross-platformvisualizationinteraction
demotivationbloated, expensive IDEs
dozens of languagesclient-server code
browser quirksapplet speed
Luke, I’m your father
ECMAScript The Grandfather of:KJS (Konqueror)
actionscriptjavascriptQtScript
(several others)
you must have been adopted
different:method overloading restrictions
initialization behaviorgarbage collectionnative class APIsglobal functionserror handling
javascript vs. actionscript
javascript: based on ECMA ~ v.3actionscript: based on ECMA ~ v.4
virtually closed source
virtual machinesFlash is most prevalent pres. tech.video, fast/simple 2d rendering.
pseudo integration with css.lightweight, portable.
but swfs arecompletely closed source
swfhackingOpen Source SWF Hacker
MTASC founder AS3=>SWF compiler
Targets AVM(1/2) directlyimproves AS3 performance
Nicolas Cannasse
Is there a better language for AVM2 than AS3?Can I also target javascript with this language?
What else?October, 2005
one language to rule them all
actionscriptjavascript
nekophpc++
source.hx
source.js
source.php
source.swf
source.so
source.n
client
server
haXecompiler
not so differentsyntax is essentially the sameclass files + main() => targetmoved global functions to API
type inference
Test.hx
build.hxml
test.swf
compiler optionssets platform
optional dumpsextra libs/pathsvm versioning
single APIintegrated namespaces
universal methods(XML, Math, Dates)
Parameterized Classes(Array, List, Hash)Native Data Types
Int, Float, Bool
AS3
JS
all kinds of goodiesfast compilation
strong and dynamic type checkingdynamic objects, reflection (c++)
contextual autocompletion (!) inlining & generics (flash)conditional compilationpackages & typing (js)
mixins & closures
who uses haXe?growing from Euro flash game
developer community to server side applications.
scarygirl
MyBrute
Prizee
Comapping.com github
hello hello hello worldcompile single haXe source to
js, swf, php
actionscriptteam
javascriptteam
phpteam
haXe teamvs.
in summarystreamlined development
complete unit testingmore productivitybetter debuggingmore flexibility
more agilityfaster code
etc. etc.etc.
More Time to do Interesting Things on the Web
HaXe