From f1159951711a45c6f52b78ec247634c18f7de0b5 Mon Sep 17 00:00:00 2001
From: Dan Korostelev <nadako@gmail.com>
Date: Tue, 24 Mar 2015 01:19:13 +0300
Subject: Use "haxe" highlighting instead of C#

---
 haxe.html.markdown | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'haxe.html.markdown')

diff --git a/haxe.html.markdown b/haxe.html.markdown
index 8599de8d..b8e6a265 100644
--- a/haxe.html.markdown
+++ b/haxe.html.markdown
@@ -11,7 +11,7 @@ Haxe author).  Note that this guide is for Haxe version 3.  Some of the guide
 may be applicable to older versions, but it is recommended to use other
 references.
 
-```csharp
+```haxe
 /*
    Welcome to Learn Haxe 3 in 15 minutes.  http://www.haxe.org
    This is an executable tutorial.  You can compile and run it using the haxe
-- 
cgit v1.2.3


From 0e118934db0c6813482cee606ce15cec681a9ae0 Mon Sep 17 00:00:00 2001
From: Dan Korostelev <nadako@gmail.com>
Date: Tue, 24 Mar 2015 01:21:28 +0300
Subject: [haxe] some additions and fixes (closes #489)

---
 haxe.html.markdown | 33 +++++++++++++++++++++------------
 1 file changed, 21 insertions(+), 12 deletions(-)

(limited to 'haxe.html.markdown')

diff --git a/haxe.html.markdown b/haxe.html.markdown
index b8e6a265..e57c46a8 100644
--- a/haxe.html.markdown
+++ b/haxe.html.markdown
@@ -3,6 +3,7 @@ language: haxe
 filename: LearnHaxe3.hx
 contributors:
     - ["Justin Donaldson", "https://github.com/jdonaldson/"]
+    - ["Dan Korostelev", "https://github.com/nadako/"]
 ---
 
 Haxe is a web-oriented language that provides platform support for C++, C#,
@@ -34,16 +35,20 @@ references.
 /*
    This is your first actual haxe code coming up, it's declaring an empty
    package.  A package isn't necessary, but it's useful if you want to create a
-   namespace for your code (e.g. org.module.ClassName).
+   namespace for your code (e.g. org.yourapp.ClassName).
+
+   Omitting package declaration is the same as declaring empty package.
  */
 package; // empty package, no namespace.
 
 /*
-   Packages define modules for your code. Each module (e.g. org.module) must
-   be lower case, and should exist as a folder structure containing the class.
-   Class (and type) names must be capitalized. E.g, the class "org.module.Foo"
-   should have the folder structure org/module/Foo.hx, as accessible from the
-   compiler's working directory or class path.
+   Packages are directories that contain modules. Each module is a .hx file
+   that contains types defined in a package. Package names (e.g. org.yourapp)
+   must be lower case while module names are capitalized. A module contain one
+   or more types whose names are also capitalized.
+
+   E.g, the class "org.yourapp.Foo" should have the folder structure org/module/Foo.hx,
+   as accessible from the compiler's working directory or class path.
 
    If you import code from other files, it must be declared before the rest of
    the code.  Haxe provides a lot of common default classes to get you started:
@@ -53,6 +58,12 @@ import haxe.ds.ArraySort;
 // you can import many classes/modules at once with "*"
 import haxe.ds.*;
 
+// you can import static fields
+import Lambda.array;
+
+// you can also use "*" to import all static fields
+import Math.*;
+
 /*
    You can also import classes in a special way, enabling them to extend the
    functionality of other classes like a "mixin".  More on 'using' later.
@@ -172,7 +183,8 @@ class LearnHaxe3{
            Regexes are also supported, but there's not enough space to go into
            much detail.
          */
-        trace((~/foobar/.match('foo')) + " is the value for (~/foobar/.match('foo')))");
+        var re = ~/foobar/;
+        trace(re.match('foo') + " is the value for (~/foobar/.match('foo')))");
 
         /*
            Arrays are zero-indexed, dynamic, and mutable.  Missing values are
@@ -383,11 +395,7 @@ class LearnHaxe3{
         */
 
         // if statements
-        var k = if (true){
-            10;
-        } else {
-            20;
-        }
+        var k = if (true) 10 else 20;
 
         trace("K equals ", k); // outputs 10
 
@@ -628,6 +636,7 @@ enum ComplexEnum{
     ComplexEnumEnum(c:ComplexEnum);
 }
 // Note: The enum above can include *other* enums as well, including itself!
+// Note: This is what called *Algebraic data type* in some other languages.
 
 class ComplexEnumTest{
     public static function example(){
-- 
cgit v1.2.3


From 03398877482f08c017e6774665f2c3b6e206ed34 Mon Sep 17 00:00:00 2001
From: Dan Korostelev <nadako@gmail.com>
Date: Tue, 24 Mar 2015 12:37:49 +0300
Subject: [haxe] polishing

---
 haxe.html.markdown | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

(limited to 'haxe.html.markdown')

diff --git a/haxe.html.markdown b/haxe.html.markdown
index e57c46a8..c807d2d7 100644
--- a/haxe.html.markdown
+++ b/haxe.html.markdown
@@ -12,7 +12,7 @@ Haxe author).  Note that this guide is for Haxe version 3.  Some of the guide
 may be applicable to older versions, but it is recommended to use other
 references.
 
-```haxe
+```csharp
 /*
    Welcome to Learn Haxe 3 in 15 minutes.  http://www.haxe.org
    This is an executable tutorial.  You can compile and run it using the haxe
@@ -37,7 +37,7 @@ references.
    package.  A package isn't necessary, but it's useful if you want to create a
    namespace for your code (e.g. org.yourapp.ClassName).
 
-   Omitting package declaration is the same as declaring empty package.
+   Omitting package declaration is the same as declaring an empty package.
  */
 package; // empty package, no namespace.
 
@@ -636,7 +636,7 @@ enum ComplexEnum{
     ComplexEnumEnum(c:ComplexEnum);
 }
 // Note: The enum above can include *other* enums as well, including itself!
-// Note: This is what called *Algebraic data type* in some other languages.
+// Note: This is what's called *Algebraic data type* in some other languages.
 
 class ComplexEnumTest{
     public static function example(){
-- 
cgit v1.2.3