bearophile wrote:
Tim Matthews:
OOC. I quite like how this one myself personally. http://ooc-lang.org/about
Type of arguments can be stated once:
Vector3f: class {
x, y, z : Float
init: func(x, y, z : Float) {
this x = x // 'this' is called 'self' in some other languages
this y = y
this z = z
}
}
It doesn't need the is() when you test for type equality:
print: func <T> (arg: T) {
if(T == Int) {
printf("%d\n", arg as Int) // 'as' allow casting
} else if(T == String) {
printf("%s\n", arg as String)
}
}
Uses a syntax better than the D foreach:
list := ArrayList<Int> new()
for(i in 0..10) list add(i) // oh yeah no needs for brackets
for(i in list) printf("%d\n")
And I have omitted some other handy features.
There's something to learn for D too :-)
Bye,
bearophile
Personally, I like this:
foreach (i; 0..10) list ~= i;
more. :)