Anyone has any clue about the amount of work it would take to change argument passing to const reference and to add a const keyword for constants (as opposed to variables) ?
Small examples:
const x = 1;//immutable
var y = 2;//mutable
foo( x: Int )//conceptually const reference to x, expected copy optimisation
foo( x: SomeRecord )//const reference
foo( x: ref SomeRecord )//reference
I've been using C++ again, and when it comes to tools and features (atomics, alignment, SSE intrinsics...) it's really good, unfortunately the language is still a pain to use and C++11 just made it worse (more complicated, even though it offers some optimizations), in short, I still like Clay better, but I'm missing a few features to make it more reliable.
(It's all too easy to mutate something by accident w/o the help of the compiler, we all change code and make mistakes.)
I'm not against doing changes myself, but I have no clue how long it would take to get used to the code base and implement the features, and I have a limited amount of free time available :(
Rodéric.