Re: [Flashcoders] haXe Flash

2006-02-26 Thread Nicolas Cannasse
 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


Re: [Flashcoders] haXe Flash

2006-02-26 Thread judah

give it time guys. they will come soon enough.

Troy Rollins wrote:



On Feb 24, 2006, at 11:20 AM, eric dolecki wrote:


Ah ok... but I'd still like to see some demos of anything built using
haXe...



Same here.

--
Troy
RPSystems, Ltd.
http://www.rpsystems.net


___
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




--
Always bear in mind that your own resolution to succeed is more important than any 
one thing.

You can have anything you want - if you want it badly enough. You can be anything you want to be, do anything you set out to accomplish if you hold to that desire with singleness of purpose. 


- Abraham Lincoln

___
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


Re: [Flashcoders] haXe Flash

2006-02-26 Thread Stan Vassilev

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


The effects of a server VM being faster than the old version of a client VM 
(Flash classic) is a Hard Thing to Assess :)
But, of course, sounds great compared to PHP. Have you tested PHP with the 
Zend Accelerator or any of the free accelerators?



A language is not just syntax, it's also architecture and a type system.
For example you will be able to do some kind of remoting by sending
Classes (not just anonymous objects) between the client and the server.


And this precisely is the issue, because you're trying to provide common 
architecture and type system over 4 different VM-s (JS, F8.5, F Classic, 
your server mod). It'll be an interesting effort to follow.


I don't doubt the theoretical ability of any turing complete system to 
emulate another, but by the practical limitations imposed by the solution.


Also we've seen how layering of new paradigms over old engines works with 
AS2, where all the compiler checks were superficial and easily worked around 
at author or runtime. 


___
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


Re: [Flashcoders] haXe Flash

2006-02-26 Thread Nicolas Cannasse
 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
 
 
 The effects of a server VM being faster than the old version of a client
 VM (Flash classic) is a Hard Thing to Assess :)

The VM can also run compiled scripts so you can compare a AS1/2 version
of a benchmark with its haXe equivalent by running the two computations
on the same computer and measuring time spent. You're welcome to run
your own benchs if you don't believe it :)

 But, of course, sounds great compared to PHP. Have you tested PHP with
 the Zend Accelerator or any of the free accelerators?

Yes we use both Zend Accelerator and EAccelerator for our old PHP devs.
Still, such technologies mainly cache the bytecode, they don't improve
so much interpreter computation speed.

 A language is not just syntax, it's also architecture and a type system.
 For example you will be able to do some kind of remoting by sending
 Classes (not just anonymous objects) between the client and the server.
 
 
 And this precisely is the issue, because you're trying to provide common
 architecture and type system over 4 different VM-s (JS, F8.5, F Classic,
 your server mod). It'll be an interesting effort to follow.
 
 I don't doubt the theoretical ability of any turing complete system to
 emulate another, but by the practical limitations imposed by the solution.

There will always be some, but it's ok as long as they don't hurt too
much development.

For example null.foo() will make a runtime exception on all platforms
but not on Flash 6/7/8. At least until there is a debug flag that
would add additional checks.

 Also we've seen how layering of new paradigms over old engines works
 with AS2, where all the compiler checks were superficial and easily
 worked around at author or runtime.

Yes, but I think this is an advantage, not a problem.

If you have a lot of runtime checks, you endup with Java which is quite
strict but not flexible. My thinking is that having a staticly typed
language over a dynamicly typed runtime permit the best of both worlds,
especialy if you provide enough Runtime Type Informations and Reflection.

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


Re: [Flashcoders] haXe Flash

2006-02-25 Thread Stan Vassilev
But with the Flex compiler and framework coming for free, and haXe not 
being 100% compatible with AS3 (as before mtasc wasn't 100% compat too 
but the situation was different), I've yet to see a benefit to using it.


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.


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?


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.


Keep in mind the AS3 compiler is a lot more complex to develop, making as 
AS2 compiler is a toy compared (I hope I'm not being too extreme, but my 
impression so far) to this. So haXe will have to be really really good at 
the output and optimizations to match a native AS3 output.


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?


It's apparent if haXe is the matching subset of AS2 and AS3, it won't be 
powerful as neither of them.


Will haXe offer .watch() in AS2 which is not in AS3? Will it offer namespace 
and E4X which are in AS3 but not AS2?


And especially E4X, I'm curious to see if haXe supports that at all and 
especially when targeting Flash 6/7/8 


___
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


Re: [Flashcoders] haXe Flash

2006-02-25 Thread Martin Wood
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?


It's apparent if haXe is the matching subset of AS2 and AS3, it won't be 
powerful as neither of them.


i think you miss the distinction between a language and its libraries.

From my understanding the core language will provide most features that are 
available from each of the supported targets, but if you want to make use of 
specific parts of the target platform then you will need to use its libraries.


Its entirely possible to create a unified API that supports some subset of 
target specific features, but I expect that this kind of work would most likely 
be done by the users of haxe, not necessarily by Nicolas.


One advantage of something like haxe is that you reduce the amount of context 
switching your brain has to do as you move between targets. At the moment im 
writing an application that has a flash front end and a java backend.
Now they are fairly similar languages but I still have to re-adjust my brain as 
I move between the two.


And another problem is that I end up duplicating a lot of concepts and code that 
represent data and business processes (which generally have little dependencies 
on target specific libraries).
Sure some of this can be automated, but I really like the idea of being able to 
create my value objects once, in one language. Same with business processes and 
other application logic.
Im sure you will have heard the hot new acronym DRY. Dont repeat yourself. With 
haxe you can take that idea and apply it across all targets where appropriate.


less code = less bugs.

personally i think its a great idea. Its not for everyone of course and you are 
right in that there is a certain barrier to using some aspects of it as its not 
yet likely to be found as part of some cheap hosting deal, but for those of us 
who have control of our deployment servers it offers a great opportunity.


A great quote I often remember which Nicolas should put as his sig :

'don't bite my finger, look where i am pointing'


thanks,

Martin
___
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


Re: [Flashcoders] haXe Flash

2006-02-25 Thread Stan Vassilev

i think you miss the distinction between a language and its libraries.

From my understanding the core language will provide most features that 
are available from each of the supported targets, but if you want to make 
use of specific parts of the target platform then you will need to use its 
libraries.


Features such as E4X and regex are part of the core ECMA language, and are 
not part of the Flash's API-s or HTML API-s.


My question is: will those be missing from haXe or not? And if not, how can 
haXe be compatible with Flash 6/7/8 when these won't work there (or will 
work very very slow, emulated with bytecodes).


The time saved on having the same syntax for DHTML/Server/Flash might be 
easily be lost by the lack of the productivity features specific to each 
language.


And another problem is that I end up duplicating a lot of concepts and 
code that represent data and business processes (which generally have 
little dependencies on target specific libraries).
Sure some of this can be automated, but I really like the idea of being 
able to create my value objects once, in one language. Same with business 
processes and other application logic.


AS3 is 100% ECMA 4 compliant (portable profile), JS itself is the base of 
the ECMA spec. And there are several existing JS engines that work on the 
server side.


haXe is not 100% ECMA compliant, it's ECMA based, but what it is, isn't 
exactly standards compliant. Have the haXe devs never though we'll have to 
port our code from AS/JS to haXe in first place so to take advantage of the 
shared language platform?


personally i think its a great idea. Its not for everyone of course and 
you are right in that there is a certain barrier to using some aspects of 
it as its not yet likely to be found as part of some cheap hosting deal, 
but for those of us who have control of our deployment servers it offers a 
great opportunity.


I also think it's a great idea, but the issue isn't in the idea, but 
implementation: you may try to bring this idea closer to ECMA compliance to 
make it more useful for the rest of us who don't want to give up on the 
world to take benefit of haXe :)
I wish you luck with the platform and will be checking it out regularly  :) 


___
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


Re: [Flashcoders] haXe Flash

2006-02-24 Thread Stan Vassilev
It looks they've gotten a bit scrambled with the introduction of AS3 (could 
be wrong).


But with the Flex compiler and framework coming for free, and haXe not being 
100% compatible with AS3 (as before mtasc wasn't 100% compat too but the 
situation was different), I've yet to see a benefit to using it.


Keep in mind the AS3 compiler is a lot more complex to develop, making as 
AS2 compiler is a toy compared (I hope I'm not being too extreme, but my 
impression so far) to this. So haXe will have to be really really good at 
the output and optimizations to match a native AS3 output.


Regards, Stan Vassilev

- Original Message - 
From: eric dolecki [EMAIL PROTECTED]

To: Flashcoders mailing list flashcoders@chattyfig.figleaf.com
Sent: Friday, February 24, 2006 3:34 PM
Subject: [Flashcoders] haXe  Flash


Is anyone playing around with haXe? I'm curious as to the real benefits in
the Flash world.

http://haxe.org/tutos/start/flash

- edolecki
___
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 


___
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


Re: [Flashcoders] haXe Flash

2006-02-24 Thread Nicolas Cannasse
It looks they've gotten a bit scrambled with the introduction of AS3 
(could be wrong).


You are ;)
haXe have been planned after AS3 was announced.

But with the Flex compiler and framework coming for free, and haXe not 
being 100% compatible with AS3 (as before mtasc wasn't 100% compat too 
but the situation was different), I've yet to see a benefit to using it.


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.


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.


Keep in mind the AS3 compiler is a lot more complex to develop, making 
as AS2 compiler is a toy compared (I hope I'm not being too extreme, but 
my impression so far) to this. So haXe will have to be really really 
good at the output and optimizations to match a native AS3 output.


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.


My two cents,

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


Re: [Flashcoders] haXe Flash

2006-02-24 Thread eric dolecki
Are there any demos of anything online to check for speed, etc? I haven't
found anything. Speed at lower plugins sounds pretty intriguing.

On 2/24/06, Nicolas Cannasse [EMAIL PROTECTED] wrote:

  It looks they've gotten a bit scrambled with the introduction of AS3
  (could be wrong).

 You are ;)
 haXe have been planned after AS3 was announced.

  But with the Flex compiler and framework coming for free, and haXe not
  being 100% compatible with AS3 (as before mtasc wasn't 100% compat too
  but the situation was different), I've yet to see a benefit to using it.

 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.

 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.

  Keep in mind the AS3 compiler is a lot more complex to develop, making
  as AS2 compiler is a toy compared (I hope I'm not being too extreme, but
  my impression so far) to this. So haXe will have to be really really
  good at the output and optimizations to match a native AS3 output.

 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.

 My two cents,

 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

___
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


RE: [Flashcoders] haXe Flash

2006-02-24 Thread Mike Mountain
I think 'speed' here is compile speed - not player speed?

 -Original Message-
 From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED] On Behalf 
 Of eric dolecki
 Sent: 24 February 2006 15:56
 To: Flashcoders mailing list
 Subject: Re: [Flashcoders] haXe  Flash
 
 Are there any demos of anything online to check for speed, 
 etc? I haven't found anything. Speed at lower plugins sounds 
 pretty intriguing.
___
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


Re: [Flashcoders] haXe Flash

2006-02-24 Thread Diego Guidi
If a little part that you written is true, you're my hero!

2006/2/24, Nicolas Cannasse [EMAIL PROTECTED]:
  It looks they've gotten a bit scrambled with the introduction of AS3
  (could be wrong).

 You are ;)
 haXe have been planned after AS3 was announced.

  But with the Flex compiler and framework coming for free, and haXe not
  being 100% compatible with AS3 (as before mtasc wasn't 100% compat too
  but the situation was different), I've yet to see a benefit to using it.

 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.

 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.

  Keep in mind the AS3 compiler is a lot more complex to develop, making
  as AS2 compiler is a toy compared (I hope I'm not being too extreme, but
  my impression so far) to this. So haXe will have to be really really
  good at the output and optimizations to match a native AS3 output.

 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.

 My two cents,

 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

___
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