Jonathan M Davis:
Adding much of _anything_ to the language is generally considered expensive.
Sometimes you add from a language removing something, like allowing handy code like this, removing such limitations and making the language more regular/uniform:
class Foo {
int x, y;
}
struct Bar {
int x, y;
}
void main() {
auto f1 = new Foo(1, 2);
auto f2 = new Foo(1);
auto b1 = new Bar(10, 20);
auto b2 = new Bar(10);
}
Bye,
bearophile
