реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Перспективы языка D, Помогите составить мнение
_Pasha
сообщение Apr 5 2011, 19:55
Сообщение #1


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Здравствуйте! Сабж.
Кто интересовался, выскажите плз свои соображения по поводу жызненно это или не очень.
Пока мое мнение такое, что он, конечно, зачат в правильной позе, но вынашивается не очень - на основе бесчисленных хотелок фанат-коммунити. Может, я за деревьями леса не вижу?
Короче, интересно посидеть в сторонке и послушать.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение May 27 2011, 04:33
Сообщение #2


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



А смысл? Ну да, сферический конь в вакууме...
Сложить мнение можно лишь начав его использовать.
А что бы на это сподвигнуться нужна задача, но до сих пор как-то обходился С и С++, как и подавляющее большинство наших коллег.
В ближайшее время, думаю, вряд ли что измениться.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
MrYuran
сообщение May 27 2011, 05:36
Сообщение #3


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(demiurg_spb @ May 27 2011, 08:33) *
А что бы на это сподвигнуться нужна задача, но до сих пор как-то обходился С и С++, как и подавляющее большинство наших коллег.
В ближайшее время, думаю, вряд ли что измениться.

Ну все-таки С++ (не говоря про С) на сегодняшний день уже довольно убогий. И в первую очередь засчёт очень скудных средств препроцессора.
Шаблоны в С++ несколько улучшают ситуацию, но вот почитал я того же Александреску - это ж свихнуться можно.
Книга напоминает сборник магических заклинаний. Интересно, захватывает, но крыша потихоньку едет набекрень.
Кодогенерация таким способом - это для маниаков.
Old-school в виде процедурного программирования тоже нынче уже не катит. Нужно что-то новое.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
dxp
сообщение May 28 2011, 05:18
Сообщение #4


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(MrYuran @ May 27 2011, 12:36) *
Ну все-таки С++ (не говоря про С) на сегодняшний день уже довольно убогий. И в первую очередь засчёт очень скудных средств препроцессора.

Ну, уж и убогий. Вполне мощный современный низкоуровневый ЯП. Его недостатки в виде препроцессора, местами дурацкого синтаксиса - это наследие С, совместимость с которым была поставлена во главу угла и именно благодаря которой этот ЯП смог стать таким используемым.

И если на больших машинах сейчас множество задач вполне успешно решаются с использованием высокоуровневых (скриптовых) языков, то в embedded плюсам самая ниша - эффективная реализация при внушительной мощи языковых средств.

Самый главный недостаток плюсов - это, имхо, сложность. Но тут причина не столько в самом языке, сколько в его низкоуровневости, которая подразумевает тучи нюансов почти по всем аспектам. Поэтому эффективно разрабатывать ПО на нём можно только если имеется достаточный опыт. Думается, что с D, как продолжением этой линейки, ситуация будет аналогичной.

Цитата(MrYuran @ May 27 2011, 12:36) *
Шаблоны в С++ несколько улучшают ситуацию, но вот почитал я того же Александреску - это ж свихнуться можно.
Книга напоминает сборник магических заклинаний. Интересно, захватывает, но крыша потихоньку едет набекрень.
Кодогенерация таким способом - это для маниаков.

Это с непривычки. sm.gif Да, многие финты там возникают оттого, что в языке не были предусмотрены определённые средства - например, оператор определения типа на этапе компиляции - ведь эта функциональность вполне бесплатно даётся (в смысле накладных рантайма), делается компилятором, совместимость с прежними версиями не нарушает, но до сих пор не добавили - вот Александреску и наизобретал финтов, как это реализовывать.

На самом деле там у него почти все навороты относятся к области, где давно рулят ЯП более высокого уровня, в том числе и функциональные. Конечно, сравнивать по удобству и безопасности эти языки с С++ некорректно (как и С++ сравнивать с ними по эффективности кода sm.gif). Это просто другая ниша. Естественно, что использовать средство не в своей нише - это всегда сложности и риск.

Как бы то ни было, Александреску - это отдельная тема. Подавляющее большинство кода пишется не в таком стиле, и плюсы вполне себя оправдывают.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение May 28 2011, 09:04
Сообщение #5


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(dxp @ May 28 2011, 09:18) *
Да, многие финты там возникают оттого, что в языке не были предусмотрены определённые средства - например, оператор определения типа на этапе компиляции
Для этого в gcc есть: typeof и ещё много чего полезного, но не стандартного.

Цитата(MrYuran @ May 27 2011, 09:36) *
Ну все-таки С++ (не говоря про С) на сегодняшний день уже довольно убогий.

Ничего не стоит на месте.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
_Pasha
сообщение May 28 2011, 09:26
Сообщение #6


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(dxp @ May 28 2011, 08:18) *
Думается, что с D, как продолжением этой линейки, ситуация будет аналогичной.

Ну, там сразу позиционируется гибрид lazy-programming и Сишных красот.
Повторюсь, не нравится бессистемность развития, - информации, куда идти, нету, она пока что собирается.

Цитата(demiurg_spb @ May 28 2011, 12:04) *
Для этого в gcc есть
***
Ничего не стоит на месте.

Но развивается иногда кривым путем, как в той истории с Fixed Point

Сообщение отредактировал _Pasha - May 28 2011, 09:27
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение May 29 2011, 09:02
Сообщение #7


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(_Pasha @ May 28 2011, 13:26) *
Но развивается иногда кривым путем, как в той истории с Fixed Point
Ну не таким уж и кривымwink.gif
Кстати в контексте можно и про c# упомянуть. Тоже имеет место быть (не в моём вкусе правда).
Очень динамично развивается, но так-ли это хорошо?


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
AndrewKirs
сообщение Jul 8 2011, 15:23
Сообщение #8


Участник
*

Группа: Свой
Сообщений: 63
Регистрация: 5-05-06
Пользователь №: 16 804



Насколько я знаю, в мире существует под 10 тысяч языков программирования. Создать новый язык нетрудно - трудно сделать его настолько полезным, чтобы окупились затраты по переходу на него целой армии разработчиков.
Еще трудно написать толстую кипу библиотек поддержки - и отладить их. Уже реализованные проекты зачастую учитывают, например, известные ошибки библиотек - как Вам идея все это перенести под новый язык, с его специфическими ошибками?
Когда-то язык Си славился малым размером, сейчас его наследника, Си++, маленьким никак не назовешь. Мое сочувствие лицам, изучающим с нуля его сейчас. С другой стороны, нет необходимости учить С++ целиком - в нем много подмножеств, достаточных для программирования. А чтобы новый язык, типа D, оттеснил такого признанного лидера, он должен быть на порядок лучше. Грубо говоря, резко повысить скорость написания и отладки кода и гарантировать резкое повышение надежности. Косметических улучшений будет недостаточно.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jul 8 2011, 19:51
Сообщение #9


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(AndrewKirs @ Jul 8 2011, 18:23) *
Насколько я знаю, в мире существует под 10 тысяч языков программирования. Создать новый язык нетрудно - трудно сделать его настолько полезным, чтобы окупились затраты по переходу на него целой армии разработчиков.
Еще трудно написать толстую кипу библиотек поддержки - и отладить их. Уже реализованные проекты зачастую учитывают, например, известные ошибки библиотек - как Вам идея все это перенести под новый язык, с его специфическими ошибками?
Когда-то язык Си славился малым размером, сейчас его наследника, Си++, маленьким никак не назовешь. Мое сочувствие лицам, изучающим с нуля его сейчас. С другой стороны, нет необходимости учить С++ целиком - в нем много подмножеств, достаточных для программирования. А чтобы новый язык, типа D, оттеснил такого признанного лидера, он должен быть на порядок лучше. Грубо говоря, резко повысить скорость написания и отладки кода и гарантировать резкое повышение надежности. Косметических улучшений будет недостаточно.


Хм, а я думал что никакой язык не может быть гораздо лучше других.
Потому что их роль в производительности программиста никакая.
Языки создаются под приложения. Поэтому сначала рождаются либы, а потом язык под них и только для того чтобы сохранить контроль над либами или связять свой бренд накрепко с ними.

Поэтому любой язык может вдруг подняться только потому что появится новый тип приложений, а вовсе не от того что он что то там повышает и ускрояет. Взять тот же PHP.
Повышают и ускоряют нынче интегрированные среды разработки, а не языки.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 14:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.01447 секунд с 7
ELECTRONIX ©2004-2016