diff options
| -rw-r--r-- | haxe.html.markdown | 61 | 
1 files changed, 29 insertions, 32 deletions
| diff --git a/haxe.html.markdown b/haxe.html.markdown index a50b3dbb..f7633dbf 100644 --- a/haxe.html.markdown +++ b/haxe.html.markdown @@ -17,7 +17,8 @@ recommended to use other references.     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     compiler, while in the same directory as LearnHaxe.hx: -   $> haxe -main LearnHaxe3 -x out +    +       $ haxe -main LearnHaxe3 --interp     Look for the slash-star marks surrounding these paragraphs.  We are inside     a "Multiline comment".  We can leave some notes here that will get ignored @@ -98,7 +99,7 @@ class LearnHaxe3 {          // Trace can handle any type of value or object.  It will try to print          // a representation of the expression as best it can.  You can also          // concatenate strings with the "+" operator: -        trace( " Integer: " + 10 + " Float: " + 3.14 + " Boolean: " + true); +        trace("Integer: " + 10 + " Float: " + 3.14 + " Boolean: " + true);          // In Haxe, it's required to separate expressions in the same block with          // semicolons.  But, you can put two expressions on one line: @@ -215,7 +216,7 @@ class LearnHaxe3 {          trace((8 / 3) + " is the value for (8 / 3) (a Float)");          trace((12 % 4) + " is the value for (12 % 4)"); -        //basic comparison +        // basic comparison          trace((3 == 2) + " is the value for 3 == 2");          trace((3 != 2) + " is the value for 3 != 2");          trace((3 >  2) + " is the value for 3 > 2"); @@ -225,15 +226,13 @@ class LearnHaxe3 {          // standard bitwise operators          /* -         -        ~       Unary bitwise complement -        <<      Signed left shift -        >>      Signed right shift -        >>>     Unsigned right shift -        &       Bitwise AND -        ^       Bitwise exclusive OR -        |       Bitwise inclusive OR -         +            ~       Unary bitwise complement +            <<      Signed left shift +            >>      Signed right shift +            >>>     Unsigned right shift +            &       Bitwise AND +            ^       Bitwise exclusive OR +            |       Bitwise inclusive OR          */          // increments @@ -252,16 +251,16 @@ class LearnHaxe3 {          // if statements          var j = 10; -        if (j == 10){ +        if (j == 10) {              trace("this is printed"); -        } else if (j > 10){ +        } else if (j > 10) {              trace("not greater than 10, so not printed");          } else {              trace("also not printed.");          }          // there is also a "ternary" if: -        (j == 10) ?  trace("equals 10") : trace("not equals 10"); +        (j == 10) ? trace("equals 10") : trace("not equals 10");          // Finally, there is another form of control structure that operates          // at compile time:  conditional compilation. @@ -282,7 +281,7 @@ class LearnHaxe3 {          // while loop          var k = 0; -        while (k < 100){ +        while (k < 100) {              // trace(counter); // will print out numbers 0-99              k++;          } @@ -297,7 +296,7 @@ class LearnHaxe3 {          // There is no c-style for loop in Haxe, because they are prone          // to error, and not necessary.  Instead, Haxe has a much simpler          // and safer version that uses Iterators (more on those later). -        var m = [1,2,3]; +        var m = [1, 2, 3];          for (val in m) {              trace(val + " is the value for val in the m array");          } @@ -339,7 +338,7 @@ class LearnHaxe3 {           */          var my_dog_name = "fido";          var favorite_thing  = ""; -        switch(my_dog_name){ +        switch(my_dog_name) {              case "fido" : favorite_thing = "bone";              case "rex"  : favorite_thing = "shoe";              case "spot" : favorite_thing = "tennis ball"; @@ -387,14 +386,14 @@ class LearnHaxe3 {          // You can convert strings to ints fairly easily.          // string to integer -        Std.parseInt("0"); // returns 0 -        Std.parseFloat("0.4"); // returns 0.4; +        Std.parseInt("0");     // returns 0 +        Std.parseFloat("0.4"); // returns 0.4          // integer to string -        Std.string(0); // returns "0"; +        Std.string(0); // returns "0"          // concatenation with strings will auto-convert to string. -        0 + "";  // returns "0"; -        true + ""; // returns "true"; +        0 + "";    // returns "0" +        true + ""; // returns "true"          // See documentation for parsing in Std for more details. @@ -425,8 +424,8 @@ class LearnHaxe3 {             The other more extreme option is the "untyped" keyword:           */          untyped { -            var x:Int = 'foo'; // this can't be right! -            var y:String = 4;  // madness! +            var x:Int = 'foo'; // This can't be right! +            var y:String = 4;  // Madness!          }          /* @@ -537,7 +536,7 @@ class BarClass {  }  // A simple interface to implement -interface BarInterface{ +interface BarInterface {      public function baseFunction(x:Int):String;  } @@ -581,7 +580,7 @@ class SimpleEnumTest {  }  // Enums go much further than simple states, we can also enumerate -// *constructors*, but we'll need a more complex enum example +// *constructors*, but we'll need a more complex enum example.  enum ComplexEnum {      IntEnum(i:Int);      MultiEnum(i:Int, j:String, k:Float); @@ -596,7 +595,7 @@ class ComplexEnumTest {          var e1:ComplexEnum = IntEnum(4); // specifying the enum parameter          // Now we can switch on the enum, as well as extract any parameters          // it might of had. -        switch(e1){ +        switch(e1) {              case IntEnum(x) : trace('$x was the parameter passed to e1');              default: trace("Shouldn't be printed");          } @@ -610,7 +609,7 @@ class ComplexEnumTest {          // enums all the way down          var e3 = ComplexEnumEnum(ComplexEnumEnum(MultiEnum(4, 'hi', 4.3))); -        switch(e3){ +        switch(e3) {              // You can look for certain nested enums by specifying them              //  explicitly:              case ComplexEnumEnum(ComplexEnumEnum(MultiEnum(i,j,k))) : { @@ -624,7 +623,7 @@ class ComplexEnumTest {  }  class TypedefsAndStructuralTypes { -    public static function example(){ +    public static function example() {          // Here we're going to use typedef types, instead of base types.          // At the top we've declared the type "FooString" to mean a "String" type.          var t1:FooString = "some string"; @@ -653,9 +652,7 @@ class TypedefsAndStructuralTypes {                  ?optionalString: String,                  requiredInt: Int             } -         */ -        /*             Typedefs work well with conditional compilation.  For instance,             we could have included this at the top of the file: | 
