Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It's just shilling.

OP asked for:

> only fixed bugs or deprecated old features

When you get right down to that, you do end up with something like Rust. E.g. C++'s move semantics are weird because for historical reasons copying is the default. Get rid of those historical reasons, and there's no reason not to do it the Rust way.

40 years of "no big breaking changes" really is a lot of cruft.



> and there's no reason not to do it the Rust way

memcpy everywhere is definitely not the best answer to every problem


If you want a copy constructor, it would work like this:

Copy : Clone :: Move : Relocate

I.e. there would not be the presumption that everything is automatically movable or coppiable, there would be magic traits to indicate memmove / memcpy and friends, and then plain old stdlib super traits for user-defined cloning and relocating.

This is the the right design for move constructors, full stop.


It's not like C++'s move semantics magically get rid of the necessity of copying data either.


I meant to write it's not just shilling.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: