From: Jason Roelofs Date: 2009-02-23T09:06:36+09:00 Subject: Re: Nexus Programming Language From the Documentation: ------------------ 3.3 - Arrays {} // an empty array (with no elements) {1,2,3} // an array of three elements {1,{2,3}} // a nested array 3.4 - Tables _{} // an empty table (with no entries) _{"a";1, "b";2, "c";3} // a table of three entries 3.5 - Maps #{} // an empty map (with no entries) #{"a";1, "b";2, "c";3} // a map with three entries 4 - Variables name // local variable $name // global variable @name // object field Name // class field ---------------- *COUGH* People HATE Perl's crazy confusing symbol variable designation rules. What's the difference between a Table and a Map? Why does it use the semi-colon as a map operator? And as what other people said previously: ^ for assignment operator? wow, that's insanely difficult to read. I'd rather go learn OCaml than this, sorry. There's a reason languages use a lot of the same syntax, ideas, and operators: people are used to them. [] is an array / list, {} is a hash / map / table, = is assignment (can be := if you want = to be comparison). I see nothing here but backwards steps. And no operator precedence? The reason this is rarely seen is because it's *wrong*. 1 + 2 / 4 is ALWAYS 3. That's math. Building a language that calculates this expression to 3/4 is a bug and will cause nothing but rampant confusion and frustration. Jason