Feels like it’s taking the best of Rust and Ruby (with Python style whitespace)
Admittedly it’s just a first impression
Admittedly it’s just a first impression
imho, I don't consider Type-inference as a good thing when it happens from 50 lines ahead/below. How would regular people follow along?
Good case
x = "hello" // infer type as string - good thing.
Bad case
var/declare x;
50 lines later
if (....)
x = "world" // infer type as string - this is badvar/declare x;
25 lines later
call f(x); // ** Reader has no idea what x is ... even though compiler has **
25 lines later
if (....)
x = "world" // infer type as string - this is bad let i = 1;
let j = 1;
print!("i: {:?}\n", !i);
print!("j: {:?}\n", !j);
// pretend there's a lot of code here
// spooky action at a distance
let v = vec![1, 2, 3];
v[i];
You might think those two print statements would print the same value. They do not.