>> haXe is not only Flash. You can use the same language to develop the >> JavaScript part of the website, and the Server part as well. Hence >> having one single language on the two sides : client and server. > > > True but why would I need that? Why would I give up the ubiquity of > technologies like PHP I can get at any cheap $5 hosting, and go for > something totally new and unproved, that need a special Apache module > and I don't even know if it runs in Windows.
haXe have been released in Beta just a few weeks ago, this does explain why there is not so much demos yet. However my company have been using MotionTypes (haXe ancestor) and the server side technology to build several websites that are accessed by tens-of-thousands daily users (see http://www.dinoparc.com and games at http://www.kadokado.com for examples). The Apache module run on Windows, OSX, Linux and BSD. The main reason why you would need that is productivity. In my company we could get a x2 to x3 productivity boost by using MotionTypes, and haXe should provide the same or even better. This is due to using a flexible type system, which I will detail below. Another reason might be speed. The virtual machine is 20 to 40 times faster than PHP interpreter or Flash Classic VM. That helps you serve a lot more requests. Also, since it's compiled, you don't have to put your source code on the server, and you can design your website as an application (see http://nekovm.org/doc/mod_neko "Script VS Application"). >> Plus, the haXe language is by far more powerful and flexible than AS3, >> thanks to the flexible type system and new features such as iterators, >> type parameters and enums. > > > What I saw so far in haXe is that it goes to rename most of the core var > types for the sake of being different. > > What is with "Bool" instead of "Boolean"? Is it so much important to > type 3 letters less than reduce the gap between AS3 and haXe? > > Same for "Float" instead of "float" (AS3) or "Number" (AS3, AS2). Have > none of the haXe developers heard "standard is better than better"? > > Why go against basics in ECMA4 prop. that don't affect the language > functionality in the least? It does. Bool, Int, and Float in haXe are using the plaform best representation. They might not be objects. Think them like Java "int" "float" and "bool". But with a more conventional naming. > We have flexible type system in AS2 and the whole "flexible" part was > taxing the CPU and RAM significantly vs plain strict type vars. > > So this is why although AS3 supports untyped parameters it also supports > strict types, and I have no idea what flexible type system is, but it > certainly isn't strict since AS1/2 VM doesn't understand strict typing. Flexible type system means that you don't have to write types everywhere. var x = "Hello"; The type of "x" is String, it's obvious. var x = o.foo(); If you know the type of "o", you know the return type of "foo", then the type of "x" is obvious again. Flexible means here that you can have a strictly-typed program without needing to write types everywhere. There is no such sinces such as an "untyped variable". If you want to write dynamicly typed code, you have to use the Dynamic type. This way you don't create bugs in your program by simply forgetting a variable type. You might have a look at haXe specification to get the complete idea. >> There's been progress in this domain as well. You should expect haXe >> to be able to get AS3 speed and new APIs quite soon. Plus, you will >> still be able to use haXe to target Flash 6-7-8 player which is not >> the case for AS3. > > > Of course it's the case with AS3. It's perfectly possible to write AS3 > code that compiles in AS2 too, the problem is, would we want to? Of course in general first you decide which player version to target and then you write the code. The idea is that in haXe you have one single language for both player generations. For example you can write AS1-equivalent code by using the "untyped" keyword. For example, if you haven't learn AS3 yet, you can port your code from AS2 to haXe (quite easy to do actually) and then later when haXe support new virtual machine, you don't have to learn a new language anymore. > And especially E4X, I'm curious to see if haXe supports that at all and > especially when targeting Flash 6/7/8 Right now there is no E4X support, but it might be possible to add it in the future and indeed target Flash 6/7/8. Nicolas _______________________________________________ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com