Rust как несколько сырой язык...
От: Shmj Ниоткуда  
Дата: 09.09.23 19:13
Оценка: -1 :)
Вот какие слова в Rust зарезервированы для будущих версий, но пока не используются:

abstract
become
box
do
final
macro
override
priv
try
typeof
unsized
virtual
yield


Т.е. такие есть в планах добавление полноценного ООП. Пока что основная слабость Rust — нет ООП полноценного, как в том же C++ или хотя бы как в Java.

А ведь, как ни крути, ООП — достаточно востребованный инструмент, о чем создатели Rust знают и заранее под это дело оставили слова.

Получается в некоторых веща, как то контроль заимствований — он опережает C++ — и более того, в C++ будет проблематично это добавить. А вот в ООП — не полноценен и это достаточно критично для многих проектов, особенно там где GUI.
Отредактировано 09.09.2023 19:15 Shmj . Предыдущая версия .
Re: Rust как несколько сырой язык...
От: wl. Россия  
Дата: 09.09.23 19:27
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Вот какие слова в Rust зарезервированы для будущих версий, но пока не используются:


обычное дело. Ты ещё Swift не видел наверное. Вышла новая iOS и новый Xcode, версия Swift сменилась, пытаешься скомпилировать проект, который компилировался на предыдущей версии — 940 ошибок. Нормально апгрейдили
(это из старых воспоминаний, когда менялась версия с 3 на 4-ю, кажется, точно уже не вспомню)
Отредактировано 09.09.2023 19:29 wl. . Предыдущая версия .
Re: Rust как несколько сырой язык...
От: Эйнсток Файр Мухосранск Странный реагент
Дата: 09.09.23 20:17
Оценка: -1 :)
S> Пока что основная слабость Rust — нет ООП полноценного

ООП — зло
Автор: Эйнсток Файр
Дата: 06.09.23
.
Re: Rust как несколько сырой язык...
От: vsb Казахстан  
Дата: 09.09.23 20:45
Оценка: +2
Мало ли что они зарезервировали. В Java goto зарезервировали тыщу лет назад. Но не добавили и вряд ли когда-нибудь добавят.
Re: Rust как несколько сырой язык...
От: CreatorCray  
Дата: 09.09.23 22:25
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Т.е. такие есть в планах добавление полноценного ООП. Пока что основная слабость Rust — нет ООП полноценного, как в том же C++ или хотя бы как в Java.

S>опережает C++

Взаимоисключающие параграфы detected
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[2]: Rust как несколько сырой язык...
От: Shmj Ниоткуда  
Дата: 10.09.23 07:23
Оценка:
Здравствуйте, CreatorCray, Вы писали:

CC>Взаимоисключающие параграфы detected


Так вы внимательно прочитайте.

В ООП — С++ более развит, значительно более развит.

В управлении памятью — unique_ptr|shared_ptr|weak_ptr — добавили только в 2011, причем контроль компилятор то не осуществляет в полной мере — максимум вам варнинг выдадут, если используете указатель на перемещенное значение. А добавят ли в С++ полноценный контроль компилятором как в Rust — скорее всего уже нет.
Re[3]: Rust как несколько сырой язык...
От: so5team https://stiffstream.com
Дата: 10.09.23 08:11
Оценка: 2 (1) +2
Здравствуйте, Shmj, Вы писали:

S>В управлении памятью — unique_ptr|shared_ptr|weak_ptr — добавили только в 2011


В C++98 существовал auto_ptr, предтеча unique_ptr.
shared_ptr/weak_ptr в Boost-овой реализации были доступны с начала 2000х.
Но вообще умные указатели на базе подсчета ссылок (пусть даже не такие продвинутые, как shared_ptr/weak_ptr, без счетчика "слабых" ссылок) были известны и применялись в самодельных реализациях с 1990-х (во второй половине 1990-х так точно).

Просто для информации и понимания: в C++ уже много лет есть то, чего нет в стандартной библиотеки языка C++ (и чего в этой самой библиотеке может вообщени никогда не оказаться).

S>А добавят ли в С++ полноценный контроль компилятором как в Rust — скорее всего уже нет.


И это хорошо.
Re[4]: Rust как несколько сырой язык...
От: Shmj Ниоткуда  
Дата: 10.09.23 09:48
Оценка:
Здравствуйте, so5team, Вы писали:

S>shared_ptr/weak_ptr в Boost-овой реализации были доступны с начала 2000х.


Так не было же r-value -ссылок && и семантики перемещения на уровне языка. Как же оно перемещало?
Отредактировано 10.09.2023 9:49 Shmj . Предыдущая версия .
Re[5]: Rust как несколько сырой язык...
От: so5team https://stiffstream.com
Дата: 10.09.23 09:55
Оценка:
Здравствуйте, Shmj, Вы писали:

S>>shared_ptr/weak_ptr в Boost-овой реализации были доступны с начала 2000х.


S>Так не было же r-value -ссылок && и семантики перемещения на уровне языка. Как же оно перемещало?


Оно и не перемещало. Что было критично только для auto_ptr, из-за чего auto_ptr и выбросили, предоставив вместо него unique_ptr.

Для shared_ptr/weak_ptr наличие семантики перемещения -- это всего лишь оптимизация. Полезная, но не критичная.
Re: Rust как несколько сырой язык...
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 10.09.23 12:16
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Т.е. такие есть в планах добавление полноценного ООП. Пока что основная слабость Rust — нет ООП полноценного, как в том же C++ или хотя бы как в Java.

Не факт В Go нет полноценного ООП, что не мешает быть языку востребованным и высокооплачиваемым.

S>А ведь, как ни крути, ООП — достаточно востребованный инструмент, о чем создатели Rust знают и заранее под это дело оставили слова.

Раст не то чтобы новый язык, он уже почии 10 лет существует, а в современном виде 5. Вполне возможно слова были зарезервированы на старте, а сейчас никто не помышляет об ООП в нем.

S>Получается в некоторых веща, как то контроль заимствований — он опережает C++ — и более того, в C++ будет проблематично это добавить.

Ну какбы это единственное чем раст "опережает", хотя я бы сказал "отличается в положительную сторону" от остальных языков.

S>А вот в ООП — не полноценен и это достаточно критично для многих проектов, особенно там где GUI.

Да не то что не полноценен, его в расте просто нет.
Re[2]: Rust как несколько сырой язык...
От: Shmj Ниоткуда  
Дата: 10.09.23 12:33
Оценка: :)))
Здравствуйте, Эйнсток Файр, Вы писали:

ЭФ>ООП &mdash; зло
Автор: Эйнсток Файр
Дата: 06.09.23
.


Тут вот в чем дело — человек мыслит объектами — хотите вы или нет. Более того — мыслит иерархическими объектами. Так что язык без ООП просто будет во многих случаях не удобен. Вот В C объектов нет, а ведь все-равно их добавили в реальных проектах, особенно там где GUI.
Re[2]: Rust как несколько сырой язык...
От: so5team https://stiffstream.com
Дата: 10.09.23 12:35
Оценка: +1
Здравствуйте, gandjustas, Вы писали:

G>Раст не то чтобы новый язык, он уже почии 10 лет существует, а в современном виде 5.


Простите за занудность, но релиз Rust 1.0 состоялся в 2015-ом году, т.е. не пять, а все восемь.
Re[3]: Rust как несколько сырой язык...
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 10.09.23 12:43
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Здравствуйте, Эйнсток Файр, Вы писали:


ЭФ>>ООП &mdash; зло
Автор: Эйнсток Файр
Дата: 06.09.23
.


S>Тут вот в чем дело — человек мыслит объектами — хотите вы или нет. Более того — мыслит иерархическими объектами.

Я даже знаю кто эту чушь придумал. Меня интересует есть и реальные исследования о том что "человек мыслит объектами", тем более "иерархическими"?


S>Так что язык без ООП просто будет во многих случаях не удобен. Вот В C объектов нет, а ведь все-равно их добавили в реальных проектах, особенно там где GUI.

Я за 15 лет не встречал ни одной задачи кроме лейатуа GUI, где ООП был бы необходим.
Re[4]: Rust как несколько сырой язык...
От: Shmj Ниоткуда  
Дата: 10.09.23 13:08
Оценка:
Здравствуйте, gandjustas, Вы писали:

S>>Тут вот в чем дело — человек мыслит объектами — хотите вы или нет. Более того — мыслит иерархическими объектами.

G>Я даже знаю кто эту чушь придумал. Меня интересует есть и реальные исследования о том что "человек мыслит объектами", тем более "иерархическими"?

Какие исследования? И так все понятно — вот человек, вот машина, вот ребенок. Вот вся биология с ее иерархией — начиная с 4 царств.

S>>Так что язык без ООП просто будет во многих случаях не удобен. Вот В C объектов нет, а ведь все-равно их добавили в реальных проектах, особенно там где GUI.

G>Я за 15 лет не встречал ни одной задачи кроме лейатуа GUI, где ООП был бы необходим.

GUI — очень важная часть ПО, без него не возможно ничего сделать.

Ну и без него — паттерны проектирования на основе ООП то не дураки подметили. Мы к ним приходим в процессе работы, это просто удобно.
Re[5]: Rust как несколько сырой язык...
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 10.09.23 13:18
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Здравствуйте, gandjustas, Вы писали:


S>>>Тут вот в чем дело — человек мыслит объектами — хотите вы или нет. Более того — мыслит иерархическими объектами.

G>>Я даже знаю кто эту чушь придумал. Меня интересует есть и реальные исследования о том что "человек мыслит объектами", тем более "иерархическими"?

S>Какие исследования?

Научные

S>И так все понятно — вот человек, вот машина, вот ребенок.

Где тут иерархия?

S>Вот вся биология с ее иерархией — начиная с 4 царств.

Классификация и иерархические объекты — две большие разницы. Я даже хотел написать примеры, но думаю всем читателям это очевидно.


S>>>Так что язык без ООП просто будет во многих случаях не удобен. Вот В C объектов нет, а ведь все-равно их добавили в реальных проектах, особенно там где GUI.

G>>Я за 15 лет не встречал ни одной задачи кроме лейатуа GUI, где ООП был бы необходим.
S>GUI — очень важная часть ПО, без него не возможно ничего сделать.
А кто-то спорит? Я говорю о том, что кроме GUI других полезных применений ООП я не знаю. Есть отдельные задачи, которые ООП может упростить, но в целом и без них можно прожить.
В наше время тотального превосходства веба над всеми другими технологиями языки без GUI тоже вполне жизнеспособны.

S>Ну и без него — паттерны проектирования на основе ООП то не дураки подметили. Мы к ним приходим в процессе работы, это просто удобно.

И что? Без ООП другие паттерны. Да и не все паттерны ООП прям настолько привязаны к ООП.
Re[3]: Rust как несколько сырой язык...
От: Эйнсток Файр Мухосранск Странный реагент
Дата: 10.09.23 14:27
Оценка:
S> Тут вот в чем дело — человек мыслит объектами — хотите вы или нет.

Смотрю тут лекции по теории познания на ютубе. Так вот это не так, человек не мыслит объектами.
Re[3]: Rust как несколько сырой язык...
От: CreatorCray  
Дата: 12.09.23 08:16
Оценка:
Здравствуйте, Shmj, Вы писали:

S>В управлении памятью — unique_ptr|shared_ptr|weak_ptr — добавили только в 2011

Что значит добавили? Я в 90х уже аналогом пользовался вовсю.
Как же меня утомили люди, которые не понимают что язык это исключительно то, что требует поддержки компилятором. Всё что можно написать на языке — доступно сразу, оно не требует никакого добавления.

S> причем контроль компилятор то не осуществляет в полной мере

И не должен

S>А добавят ли в С++ полноценный контроль компилятором как в Rust — скорее всего уже нет.

И слава Анубису что не добавят. Оно тут нафиг не нужно, будет только мешать.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[4]: Rust как несколько сырой язык...
От: CreatorCray  
Дата: 12.09.23 08:16
Оценка:
Здравствуйте, so5team, Вы писали:

S>Просто для информации и понимания: в C++ уже много лет есть то, чего нет в стандартной библиотеки языка C++ (и чего в этой самой библиотеке может вообщени никогда не оказаться).

This!
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[4]: Rust как несколько сырой язык...
От: Shmj Ниоткуда  
Дата: 12.09.23 09:54
Оценка:
Здравствуйте, CreatorCray, Вы писали:

S>>А добавят ли в С++ полноценный контроль компилятором как в Rust — скорее всего уже нет.

CC>И слава Анубису что не добавят. Оно тут нафиг не нужно, будет только мешать.

А строгая типизация вам не мешает?
Re[5]: Rust как несколько сырой язык...
От: CreatorCray  
Дата: 12.09.23 16:25
Оценка:
Здравствуйте, Shmj, Вы писали:

S>А строгая типизация вам не мешает?

Строгая типизация бывает разной строгости.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.