История изменений
Исправление Siborgium, (текущая версия) :
И что?
А вы считаете это чем-то хорошим? Тезис: в С++ сложно, можно проще, мы сможем проще. Получилось в итоге сложнее, про синтаксис я вообще молчу (при том, что синтаксис раста мне в целом нравится), а модель так хороша, что в основе раста – трейтах – нельзя требовать асинхронных функций, и приходится этого добиваться через макропонос.
что в каком-то странном случае мне кровь из носу надо создавать объект без исключений
Нет, не существует такого случая. В общем случае любой конструктор может отработать с ошибкой. Если нужно создать объект без исключений, то это значит, что вы либо готовы работать с объектом, у которого нарушены заложенные инварианты, либо хотите упасть в abort по первой же ошибке. Обе возможности легко реализуются.
это вполне себе (полезная) фича.
Где польза?
но пока кажется, что ты хочешь писать один в один как на плюсах, но не получается.
Нет, я достаточно писал на расте, чтобы знать, как на нем надо писать. Я говорю о том, почему я не могу на расте писать хороший код и вынужден бороться с языком для выражения конструкций так, как они должны быть выражены.
Исходная версия Siborgium, :
И что?
А вы считаете это чем-то хорошим? Тезис: в С++ сложно, можно проще, мы сможем проще. Получилось в итоге сложнее, про синтаксис я вообще молчу (при том, что синтаксис раста мне в целом нравится), а модель так хороша, что в основе раста – трейтах – нельзя требовать асинхронных функций.
что в каком-то странном случае мне кровь из носу надо создавать объект без исключений
Нет, не существует такого случая. В общем случае любой конструктор может отработать с ошибкой. Если нужно создать объект без исключений, то это значит, что вы либо готовы работать с объектом, у которого нарушены заложенные инварианты, либо хотите упасть в abort по первой же ошибке. Обе возможности легко реализуются.
это вполне себе (полезная) фича.
Где польза?
но пока кажется, что ты хочешь писать один в один как на плюсах, но не получается.
Нет, я достаточно писал на расте, чтобы знать, как на нем надо писать. Я говорю о том, почему я не могу на расте писать хороший код и вынужден бороться с языком для выражения конструкций так, как они должны быть выражены.