Hello, I'm new to haXe

classic Classic list List threaded Threaded
15 messages Options
Reply | Threaded
Open this post in threaded view
|

Hello, I'm new to haXe

Anthony Walter
Hello everybody,

I'm new to haXe and am really loving both the idea of haXe and the features in the language of haXe. I found out about haXe last Friday and just signed up for this mailing list.

1) I was reading through the mailing archives, and had some items/thoughts to add, but am unsure how to reply to a topic I never received. As such I thought I'd share a few of my thoughts as a new haXe user.

Someone recently asked about wildcard imports. I believe have a pretty good fix for this problem and welcome your feedback. To import and the contents of a directory in one import statement I create a file name the same as the directory name with contents like this:

http://imagebot.org/snapshops/haxe-import.jpg

I then add a single import clause to a source file that imports the entire directory if needed:

import codebot.System; // imports several classes and other types at once

As I add more classes and types to my system folder, I also add to my System.hx file.

2) I've written a lot of code over the years and have been mostly stuck writing Windows desktop applications. This was mostly my choice because enjoy writing and designing graphical programs and the Windows desktop has always seemed to me to be the most accessible and powerful graphical user interface operating system on the planet. Over the years I've grown depressed with the software landscape as more people turned to web and mobile platforms, where to me at least, it seemed less functional or powerful than the programming for the Windows desktop.

You can view a samples of my application portfolios in picture and video form here:

videos: http://bit.ly/oWofnO
screenshots: http://bit.ly/pYY29D

Recently I decided to start looking at Android development. This led to designing Java drawing and animation classes and unit tests in Eclipse. Which led to my exploration of Java applets. Then I looked at Flash Develop and finally I landed on haXe (thanks to Jan Flanders on freenode irc #haxe).

I was/am blow away by haXe. My first haXe project is on going. I'm aiming to write a generic platform agnostic haXe library for working with drawing, animations, and story boarding. I've written lots of OpenGL going back to early 2000 and have fleshed out a few game/real time graphic engines in a few languages. I can see myself using haXe to create an animation system that could address javascript and webgl.

As a lone wolf developer that has never worked on any open source project in my life, I was wondering if anyone reading these lists has interest in collaborating on a haXe animation/game library that could target webgl (among other platforms). I'd need help learning the ropes of working with open source team related tools such as github and firebug and whatever else.

I'm hoping haXe add Java support sometime soon so that I could compile Android applications using haXe and the Android Java SDK. I'm not too sure if I want to target C++ with haXe yet.

3) I may write another message to this list soon with feature requests. Is there already a feature request list? If so where is it? Is there anything I can do to help the people working on the design of haXe? How close is haXe 3.0 to coming out? How close are Java and C# targets?

Thanks all! Thank you creators of haXe!

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

Alex Liebert
Welcome aboard!

Nicolas is working on some improvements for the import stuff.

A little confused with your temporary solution- doesn't it lead to just as much, if not more typing, than adding the imports for each class?

The recent NME stuff > Android is worth looking into, depending what you plan to develop.

Alex


On Wed, Jul 27, 2011 at 5:56 PM, Anthony Walter <[hidden email]> wrote:
Hello everybody,

I'm new to haXe and am really loving both the idea of haXe and the features in the language of haXe. I found out about haXe last Friday and just signed up for this mailing list.

1) I was reading through the mailing archives, and had some items/thoughts to add, but am unsure how to reply to a topic I never received. As such I thought I'd share a few of my thoughts as a new haXe user.

Someone recently asked about wildcard imports. I believe have a pretty good fix for this problem and welcome your feedback. To import and the contents of a directory in one import statement I create a file name the same as the directory name with contents like this:

http://imagebot.org/snapshops/haxe-import.jpg

I then add a single import clause to a source file that imports the entire directory if needed:

import codebot.System; // imports several classes and other types at once

As I add more classes and types to my system folder, I also add to my System.hx file.

2) I've written a lot of code over the years and have been mostly stuck writing Windows desktop applications. This was mostly my choice because enjoy writing and designing graphical programs and the Windows desktop has always seemed to me to be the most accessible and powerful graphical user interface operating system on the planet. Over the years I've grown depressed with the software landscape as more people turned to web and mobile platforms, where to me at least, it seemed less functional or powerful than the programming for the Windows desktop.

You can view a samples of my application portfolios in picture and video form here:

videos: http://bit.ly/oWofnO
screenshots: http://bit.ly/pYY29D

Recently I decided to start looking at Android development. This led to designing Java drawing and animation classes and unit tests in Eclipse. Which led to my exploration of Java applets. Then I looked at Flash Develop and finally I landed on haXe (thanks to Jan Flanders on freenode irc #haxe).

I was/am blow away by haXe. My first haXe project is on going. I'm aiming to write a generic platform agnostic haXe library for working with drawing, animations, and story boarding. I've written lots of OpenGL going back to early 2000 and have fleshed out a few game/real time graphic engines in a few languages. I can see myself using haXe to create an animation system that could address javascript and webgl.

As a lone wolf developer that has never worked on any open source project in my life, I was wondering if anyone reading these lists has interest in collaborating on a haXe animation/game library that could target webgl (among other platforms). I'd need help learning the ropes of working with open source team related tools such as github and firebug and whatever else.

I'm hoping haXe add Java support sometime soon so that I could compile Android applications using haXe and the Android Java SDK. I'm not too sure if I want to target C++ with haXe yet.

3) I may write another message to this list soon with feature requests. Is there already a feature request list? If so where is it? Is there anything I can do to help the people working on the design of haXe? How close is haXe 3.0 to coming out? How close are Java and C# targets?

Thanks all! Thank you creators of haXe!

--
haXe - an open source web programming language
http://haxe.org


--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

Matthew Spencer-2
A group of us (http://haxe.org/com/incubator/3dengine/members) are working on cross platform 3D support. WebGL/js is one of the pending targets. We still need to talk to the nme team about how to handle nme/hide since both libraries need context access. Hopefully we'll have something useable soon.

--Matthew Spencer

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

Anthony Walter
In reply to this post by Alex Liebert
Alex,

I think the benefit of my solution is that with any unit I can type:

import codebot.Math;

and import my Vec1/2/3 classes, Matrix class, Quaternion class, Heading class ... etc. Yes, I still need to maintain the Math.hx when I add a new class to my Math directory, but in time I will slow the pace of my adding classes and other types to that directory.

You mention NME being greater or better than Android. I googled NME and I guess it stand for Neko Media Engine and has something to do with SDL. But how does this relate to Android? Does NME make developing games/graphical programs for Android easy, or does it have nothing to do with Android?

Thanks again.

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

Alex Liebert
yes, nme is a tool for outputting graphical haXe programs to android, ios, windows, mac, webos, and many others.  You can find out more at gamehaxe.com .

On Wed, Jul 27, 2011 at 7:23 PM, Anthony Walter <[hidden email]> wrote:
Alex,

I think the benefit of my solution is that with any unit I can type:

import codebot.Math;

and import my Vec1/2/3 classes, Matrix class, Quaternion class, Heading class ... etc. Yes, I still need to maintain the Math.hx when I add a new class to my Math directory, but in time I will slow the pace of my adding classes and other types to that directory.

You mention NME being greater or better than Android. I googled NME and I guess it stand for Neko Media Engine and has something to do with SDL. But how does this relate to Android? Does NME make developing games/graphical programs for Android easy, or does it have nothing to do with Android?

Thanks again.

--
haXe - an open source web programming language
http://haxe.org


--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Re: [haXe] Hello, I'm new to haXe

Rob Fell
In reply to this post by Alex Liebert

Welcome Anthony, you'll have fun with haXe!

I find the "multiple typedef in a single file" route is also useful for
documentation generation - i.e.:

haxe -swf foo.swf -xml output.xml --no-output codebot.System




On 11:59 AM, Alex Liebert wrote:

> Welcome aboard!
>
> Nicolas is working on some improvements for the import stuff.
>
> A little confused with your temporary solution- doesn't it lead to
> just as much, if not more typing, than adding the imports for each class?
>
> The recent NME stuff > Android is worth looking into, depending what
> you plan to develop.
>
> Alex
>
>
> On Wed, Jul 27, 2011 at 5:56 PM, Anthony Walter <[hidden email]
> <mailto:[hidden email]>> wrote:
>
>     Hello everybody,
>
>     I'm new to haXe and am really loving both the idea of haXe and the
>     features in the language of haXe. I found out about haXe last
>     Friday and just signed up for this mailing list.
>
>     1) I was reading through the mailing archives, and had some
>     items/thoughts to add, but am unsure how to reply to a topic I
>     never received. As such I thought I'd share a few of my thoughts
>     as a new haXe user.
>
>     Someone recently asked about wildcard imports. I believe have a
>     pretty good fix for this problem and welcome your feedback. To
>     import and the contents of a directory in one import statement I
>     create a file name the same as the directory name with contents
>     like this:
>
>     http://imagebot.org/snapshops/haxe-import.jpg
>
>     I then add a single import clause to a source file that imports
>     the entire directory if needed:
>
>     import codebot.System; // imports several classes and other types
>     at once
>
>     As I add more classes and types to my system folder, I also add to
>     my System.hx file.
>
>     2) I've written a lot of code over the years and have been mostly
>     stuck writing Windows desktop applications. This was mostly my
>     choice because enjoy writing and designing graphical programs and
>     the Windows desktop has always seemed to me to be the most
>     accessible and powerful graphical user interface operating system
>     on the planet. Over the years I've grown depressed with the
>     software landscape as more people turned to web and mobile
>     platforms, where to me at least, it seemed less functional or
>     powerful than the programming for the Windows desktop.
>
>     You can view a samples of my application portfolios in picture and
>     video form here:
>
>     videos: http://bit.ly/oWofnO
>     screenshots: http://bit.ly/pYY29D
>
>     Recently I decided to start looking at Android development. This
>     led to designing Java drawing and animation classes and unit tests
>     in Eclipse. Which led to my exploration of Java applets. Then I
>     looked at Flash Develop and finally I landed on haXe (thanks to
>     Jan Flanders on freenode irc #haxe).
>
>     I was/am blow away by haXe. My first haXe project is on going. I'm
>     aiming to write a generic platform agnostic haXe library for
>     working with drawing, animations, and story boarding. I've written
>     lots of OpenGL going back to early 2000 and have fleshed out a few
>     game/real time graphic engines in a few languages. I can see
>     myself using haXe to create an animation system that could address
>     javascript and webgl.
>
>     As a lone wolf developer that has never worked on any open source
>     project in my life, I was wondering if anyone reading these lists
>     has interest in collaborating on a haXe animation/game library
>     that could target webgl (among other platforms). I'd need help
>     learning the ropes of working with open source team related tools
>     such as github and firebug and whatever else.
>
>     I'm hoping haXe add Java support sometime soon so that I could
>     compile Android applications using haXe and the Android Java SDK.
>     I'm not too sure if I want to target C++ with haXe yet.
>
>     3) I may write another message to this list soon with feature
>     requests. Is there already a feature request list? If so where is
>     it? Is there anything I can do to help the people working on the
>     design of haXe? How close is haXe 3.0 to coming out? How close are
>     Java and C# targets?
>
>     Thanks all! Thank you creators of haXe!
>
>     --
>     haXe - an open source web programming language
>     http://haxe.org
>
>


--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Re: [haXe] Hello, I'm new to haXe

Anthony Walter
Documentation generation you say? I'll have to try that out soon. I'm feeling a bit overwhelmed reading all the haXe blogs and presentations. Many of the demos have very high quality art/design. It's a bit intimidating. Thanks for the welcoming, and by the way, has anyone started a haXe Google+ circle? If you feel like it, add yourself a Google+ haXe circle to using this link http://bit.ly/ozgNwO

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

Nicolas Cannasse
In reply to this post by Anthony Walter
Le 28/07/2011 02:56, Anthony Walter a écrit :
> 3) I may write another message to this list soon with feature requests.
> Is there already a feature request list? If so where is it? Is there
> anything I can do to help the people working on the design of haXe? How
> close is haXe 3.0 to coming out? How close are Java and C# targets?

Features requests can be made/discussed on the mailing list. haXe is
already quite mature so we are carefully thinking about every language
change : even if it seems a good idea, waiting a few months and thinking
again about it might reveal a not-so-good-idea-after-all ;)

Several changes are planned for haXe 3.0, see for example my haxe
meeting presentation here : http://ncannasse.fr/file/haxecon.pdf

Since most of them are backward-compatible, we can introduce them
little-by-little, we don't have a fixed timeline.

Best,
Nicolas

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

MarcWeber
> Several changes are planned for haXe 3.0, see for example my haxe
> meeting presentation here : http://ncannasse.fr/file/haxecon.pdf
more syntax, more keywords = bad idea

can you think about making an exception for
- monads (so that you can write parser combinator libraries)..
  They are very useful to create DSL's such as HAML, SQL parsing for
  type safer queries, ..
  Have a look at parsec to learn what I mean.

- pattern matching - cause it looks nicer than switch .. ?

Maybe its not that useful for game development, but for web development
it would make a difference.

Regards
Marc Weber

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

Marcelo de Moraes Serpa
Hi,

- monads (so that you can write parser combinator libraries)..

That's pretty much lambdas in Python and Ruby right?

A similar effect would be allowing passing functions around (and create a closure) but I think haXe already supports that?

Cheers,

Marcelo.

On Thu, Jul 28, 2011 at 6:58 AM, Marc Weber <[hidden email]> wrote:
> Several changes are planned for haXe 3.0, see for example my haxe
> meeting presentation here : http://ncannasse.fr/file/haxecon.pdf
more syntax, more keywords = bad idea

can you think about making an exception for
- monads (so that you can write parser combinator libraries)..
 They are very useful to create DSL's such as HAML, SQL parsing for
 type safer queries, ..
 Have a look at parsec to learn what I mean.

- pattern matching - cause it looks nicer than switch .. ?

Maybe its not that useful for game development, but for web development
it would make a difference.

Regards
Marc Weber

--
haXe - an open source web programming language
http://haxe.org


--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

MarcWeber
Excerpts from Marcelo de Moraes Serpa's message of Thu Jul 28 17:32:45 +0200 2011:
> - monads (so that you can write parser combinator libraries)..
> That's pretty much lambdas in Python and Ruby right?
Its more than that. Its about the way you can write parsers (hiding
passing the parser state).

Parsing XML looks like this:

xmlTag = do
  char "<"
  anySpcaes
  tagname <- many1 (not . isSpace)
  anySpaces
  attrs <- parseAttributes
  char ">"
  // recurse parse text, ctags, subtags
  string "</"
  string tagname
  char ">"

Note how effortlessly the parsing state is hidden. A var tagname
can be used without declaring a function, although this is very likely
to be translated into functions.
The difference is maintainability. Its easy to write and read.
Yes - you can do it with functions. But it'll take much more time.

If you google for parsec and JavaScript you'll find libraries
reimplementing that syntax - why ? Because it's that nice.

On the Haskell wiki you'll find more information easily.

And no, its more than "just lambdas".

Marc Weber

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

sledorze
In reply to this post by MarcWeber
+1 :)
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

Marcelo de Moraes Serpa
Living and learning! I'll take a look at Haskell.

M>

On Thu, Jul 28, 2011 at 3:06 PM, sledorze <[hidden email]> wrote:
+1 :)

--
View this message in context: http://haxe.1354130.n2.nabble.com/Hello-I-m-new-to-haXe-tp6628347p6631171.html
Sent from the Haxe mailing list archive at Nabble.com.

--
haXe - an open source web programming language
http://haxe.org


--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

Tyler MacLeod-2
In reply to this post by MarcWeber
Why limit to Monads, and not full out arrows?

On Thu, Jul 28, 2011 at 4:57 PM, Marc Weber <[hidden email]> wrote:

> Excerpts from Marcelo de Moraes Serpa's message of Thu Jul 28 17:32:45 +0200 2011:
>> - monads (so that you can write parser combinator libraries)..
>> That's pretty much lambdas in Python and Ruby right?
> Its more than that. Its about the way you can write parsers (hiding
> passing the parser state).
>
> Parsing XML looks like this:
>
> xmlTag = do
>  char "<"
>  anySpcaes
>  tagname <- many1 (not . isSpace)
>  anySpaces
>  attrs <- parseAttributes
>  char ">"
>  // recurse parse text, ctags, subtags
>  string "</"
>  string tagname
>  char ">"
>
> Note how effortlessly the parsing state is hidden. A var tagname
> can be used without declaring a function, although this is very likely
> to be translated into functions.
> The difference is maintainability. Its easy to write and read.
> Yes - you can do it with functions. But it'll take much more time.
>
> If you google for parsec and JavaScript you'll find libraries
> reimplementing that syntax - why ? Because it's that nice.
>
> On the Haskell wiki you'll find more information easily.
>
> And no, its more than "just lambdas".
>
> Marc Weber
>
> --
> haXe - an open source web programming language
> http://haxe.org
>

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: Hello, I'm new to haXe

laurence taylor
There is an arrows library here. I tested it under all haxe supported platforms.

import arrow.Arrow
using arrow.Arrow

is all you need do.

Functions do need to be lifted manually at the moment,

function(x){ return x + 2; }.lift();

use f.pass() if the function consumes tuples.

The rest is in the README.

Let me know if you give it a shot.

regards,
Laurence.

On Fri, Jul 29, 2011 at 3:44 PM, Tyler MacLeod <[hidden email]> wrote:
Why limit to Monads, and not full out arrows?

On Thu, Jul 28, 2011 at 4:57 PM, Marc Weber <[hidden email]> wrote:
> Excerpts from Marcelo de Moraes Serpa's message of Thu Jul 28 17:32:45 +0200 2011:
>> - monads (so that you can write parser combinator libraries)..
>> That's pretty much lambdas in Python and Ruby right?
> Its more than that. Its about the way you can write parsers (hiding
> passing the parser state).
>
> Parsing XML looks like this:
>
> xmlTag = do
>  char "<"
>  anySpcaes
>  tagname <- many1 (not . isSpace)
>  anySpaces
>  attrs <- parseAttributes
>  char ">"
>  // recurse parse text, ctags, subtags
>  string "</"
>  string tagname
>  char ">"
>
> Note how effortlessly the parsing state is hidden. A var tagname
> can be used without declaring a function, although this is very likely
> to be translated into functions.
> The difference is maintainability. Its easy to write and read.
> Yes - you can do it with functions. But it'll take much more time.
>
> If you google for parsec and JavaScript you'll find libraries
> reimplementing that syntax - why ? Because it's that nice.
>
> On the Haskell wiki you'll find more information easily.
>
> And no, its more than "just lambdas".
>
> Marc Weber
>
> --
> haXe - an open source web programming language
> http://haxe.org
>

--
haXe - an open source web programming language
http://haxe.org


--
haXe - an open source web programming language
http://haxe.org