Top Banner
HaXe Taming Web Development (So we can spend time on more interesting things)
16

HaXe Demo

Jul 02, 2015

Download

Education

a presentation given in the Strands.com offices about the haXe programming language.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: HaXe Demo

HaXeTaming Web Development

(So we can spend time on more interesting things)

Page 2: HaXe Demo

motivationcross-platformvisualizationinteraction

Page 3: HaXe Demo

demotivationbloated, expensive IDEs

dozens of languagesclient-server code

browser quirksapplet speed

Page 4: HaXe Demo

Luke, I’m your father

ECMAScript The Grandfather of:KJS (Konqueror)

actionscriptjavascriptQtScript

(several others)

Page 5: HaXe Demo

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

Page 6: HaXe Demo

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

Page 7: HaXe Demo

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

Page 8: HaXe Demo

one language to rule them all

actionscriptjavascript

nekophpc++

source.hx

source.js

source.php

source.swf

source.so

source.n

client

server

haXecompiler

Page 9: HaXe Demo

not so differentsyntax is essentially the sameclass files + main() => targetmoved global functions to API

type inference

Test.hx

build.hxml

test.swf

Page 10: HaXe Demo

compiler optionssets platform

optional dumpsextra libs/pathsvm versioning

Page 11: HaXe Demo

single APIintegrated namespaces

universal methods(XML, Math, Dates)

Parameterized Classes(Array, List, Hash)Native Data Types

Int, Float, Bool

AS3

JS

Page 12: HaXe Demo

all kinds of goodiesfast compilation

strong and dynamic type checkingdynamic objects, reflection (c++)

contextual autocompletion (!) inlining & generics (flash)conditional compilationpackages & typing (js)

mixins & closures

Page 13: HaXe Demo

who uses haXe?growing from Euro flash game

developer community to server side applications.

scarygirl

MyBrute

Prizee

Comapping.com github

Page 14: HaXe Demo

hello hello hello worldcompile single haXe source to

js, swf, php

Page 15: HaXe Demo

actionscriptteam

javascriptteam

phpteam

haXe teamvs.

Page 16: HaXe Demo

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