2 ms·
I wrote a tiny bit of Haxe some time ago as an attempt to learn the language: https://github.com/piotrklibert/dirlist/blob/master/Main.hx https://github.com/pi
by klibertp 11y ago
I wrote a tiny bit of Haxe some time ago as an attempt to learn the language: https://github.com/piotrklibert/dirlist/blob/master/Main.hx https://github.com/piotrklibert/dirlist/blob/master/Main.hx - it's a part of my larger series of blog posts, I just didn't write the one about Haxe yet (I have Nim and OCaml covered already).
As a language Haxe has some interesting features (although when compared with the other languages I chose (Nim, OCaml, Dylan, C++, Racket, Tcl...) they look fairly normal). There's an overview of Haxe features here: http://haxe.org/documentation/introduction/language-features.html http://haxe.org/documentation/introduction/language-features...
Haxe is a really good language. It's dynamic, reflective language with static type system with local type inference. It supports GADTs and pattern matching, along with the usual exhaustiveness checks. It allows for adding methods to a class from outside (a `using` keyword). It has hygienic macros similar to those of Dylan, Elixir or Sweet.js. It's type system gives you control over variance of types, which is really nice (OCaml and Scala do this too).
I think Haxe is a pretty solid language which works well for general purpose apps (from command line utilities to games) and it excels at multi-platform development. This includes backend and frontend development in web dev - with Haxe you not only can share your code between platforms (browser and node), but you also have a choice of compile target, so you can compile the same set of functions to JavaScript or Flash on the frontend and to C++ or PHP on the backend. And you can easilly switch from one target to another, for example I used the default neko target in development (blazing fast compilation) and C++ target for running on the remote server.