Форум программистов, компьютерный форум, киберфорум
Священные войны
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.75/32: Рейтинг темы: голосов - 32, средняя оценка - 4.75
Эксперт .NET
4432 / 2092 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
1

Язык программирования D и Rust. Пробовали? Что можете сказать?

03.02.2016, 09:17. Показов 6156. Ответов 88

Author24 — интернет-сервис помощи студентам
Я совсем немного пробовал работать с D, первое впечатление положительно. А по Rust посмотрел доклад, как увидел этот убогий стиль именования всего и вся в стиле: to_string, do_work, bla_bla_bla, что аж тошно стало. Понятно, что это не критерий оценки языка, так, просто, мысли в слух.

Добавлено через 12 часов 4 минуты
Ясно. Никто не пробовал. Я могу сказать, что D чем-то похож на C#, чем мне и понравился.
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.02.2016, 09:17
Ответы с готовыми решениями:

C++ снова хоронят: Rust - серебряная пуля или просто ещё один язык программирования?
https://techcrunch.com/2017/07/16/death-to-c/ В общем, если совсем вкратце, чел говорит, что...

Что можете сказать ?
У одной программулки в разделе импортируемых функций есть такие функции, как: ...

Что можете сказать по сборке?
MSI B350M PRO-VDH AMD Ryzen 5 1600 OEM DEEPCOOL GAMMAXX 200T Kingston HyperX FURY Black Series ...

Что можете сказать о ноуте?
http://www.dns-shop.ru/product/c73167ae68ca8a5a/156-noutbuk-asus-k501uq-dm036t-cernyj/ Ноутбук...

88
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
17.01.2018, 15:23 81
Author24 — интернет-сервис помощи студентам
KolodeznyDiver, да я ничего про плохо не подумал, просто разница в терминологии. Я под структурой имел ввиду более конкретное определение, вот и все. У меня собственно вопрос был к этому
Правда в Rust рекурсивными они могут быть только косвенно.
Точно такие же они, просто пишутся немного иначе.
0
Модератор
5047 / 3276 / 526
Регистрация: 01.06.2013
Сообщений: 6,806
Записей в блоге: 9
17.01.2018, 16:09 82
Цитата Сообщение от Psilon Посмотреть сообщение
`Box<T>` просто явное указание "я не знаю размер типа"
Разве Box<> не приводит к дополнительному расходу памяти и наличию ссылки (указателя) под капотом?
Т.е. `Box<T>` в косвенно рекурсивной (может и не точно, но продолжу называть её так) структуре реально позволяет создать
цепочку ссылок на экземпляры структуры, т.е. односвязанный список. Это не просто указание "я не знаю размер типа".
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
17.01.2018, 16:17 83
KolodeznyDiver, ну так, а как иначе? Хаскель и лисп магическим образом не позволяют этого, там точно также ссылка проставляется. Дополнительный расход - ну, в каком-то смысле есть, только альтернатив нет, т.к. создать тип бесконечного размера нельзя

Добавлено через 1 минуту
Цитата Сообщение от KolodeznyDiver Посмотреть сообщение
Это не просто указание "я не знаю размер типа"
Так нам ссылки в таком случае и нужны. Во всех остальных случаях мы пользуемся самой структурой, а не указателем (ссылкой) на неё.
0
Curry
17.01.2018, 16:56
  #84

Не по теме:

Цитата Сообщение от Psilon Посмотреть сообщение
ну так, а как иначе?
Ну и чудненько. Договорились.

0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
18.01.2018, 17:37 85
В свете диалога в этом треде вспомнил хорошую цитату
Rust никогда не задумывался как «универсальный язык программирования на все случаи жизни». Так что если он не удовлетворяет лично ваши (либо чьи-либо еще) потребности, то, возможно, это просто потому, что он не должен этого делать? К сожалению, многие высказывают недовольство Rust, аргументируя это тем, что «на Java/Python/PHP что-то там можно сделать проще».
0
Модератор
5047 / 3276 / 526
Регистрация: 01.06.2013
Сообщений: 6,806
Записей в блоге: 9
18.01.2018, 17:48 86
Цитата Сообщение от Psilon Посмотреть сообщение
Rust никогда не задумывался как «универсальный язык программирования на все случаи жизни».
А есть универсальный язык на все случаи?
Хотя перегрузку функций (в трейтах) могли бы сделать и по типу возвращаемого значения, а не только по типам аргументов.
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
18.01.2018, 18:01 87
KolodeznyDiver, перегрузок в расте вообще нет насколько я знаю.
0
Модератор
5047 / 3276 / 526
Регистрация: 01.06.2013
Сообщений: 6,806
Записей в блоге: 9
18.01.2018, 18:12 88
Psilon, https://medium.com/@jreem/adva... a6c8ba2e17
0
Master of Orion
Эксперт .NET
6098 / 4954 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
19.01.2018, 12:59 89
KolodeznyDiver, ну это-то да.

Добавлено через 10 минут
кстати, еще немного костыльного ООП: https://www.reddit.com/r/rust/... decorator/

Добавлено через 18 часов 25 минут
Почитал пример: ага, все просто. При этом щас еще проще, т.к. есть стандартный трейт Into (и From, имплементируется автоматически), и можно как-то так:
C++
1
2
3
4
5
6
7
8
9
10
11
impl Into<Reader> for String {
   fn into(self) -> Reader {
       Box::new(MemReader::new(self.into_bytes()))
   }
}
 
impl Into<Reader> for Path {
   fn into(self) -> Reader {
       Box::new(File::open(self).unwrap())
   }
}
0
19.01.2018, 12:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.01.2018, 12:59
Помогаю со студенческими работами здесь

Что можете сказать о конфиге?
Что можете сказать о таком конфиге?

Что можете сказать о pyglet?
Здравствуйте, собственно суть вопроса понятна из названия темы. Листал информацию по созданию игр...

Что можете сказать о этом пк
Доброго времени суток. Что можете сказать о Lenovo Z510 (59400199)...

Что мощнее язык программирования Perl или язык программирования PHP
Какой из них лучше


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
89
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru