Здравствуйте, Disappear, Вы писали: D>Не пора ли нам программировать на языке D (http://www.digitalmars.com/d/) ?
нет
"To protect people you must slay people. To let people live you must let people die. This is the true teaching of the sword."
-Seijuro Hiko, "Rurouni Kensin"
Здравствуйте, Disappear, Вы писали:
D>Долой прошлое, господа! D>Хватит уже ходить по граблям обратной совместимости с другими граблями.
D>Не пора ли нам программировать на языке D (http://www.digitalmars.com/d/) ? D>Разве мы не заслужили
не пора. Сыроват
Здравствуйте, Smal, Вы писали:
S>Здравствуйте, Disappear, Вы писали: S>не пора. Сыроват
Единственный способ сделать его стабильным, массово начав программировать
Re[3]: Не пора ли нам перейти на D
От:
Аноним
Дата:
26.02.07 17:56
Оценка:
Здравствуйте, Disappear, Вы писали:
D>Здравствуйте, Smal, Вы писали:
S>>Здравствуйте, Disappear, Вы писали: S>>не пора. Сыроват
D>Единственный способ сделать его стабильным, массово начав программировать
Начинай...
В студенческих или разовых проектов еще можно попробовать.
А если уже написаны тонны кода, то никто в здравом уме просто так язык не сменит.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Disappear, Вы писали:
D>>Здравствуйте, Smal, Вы писали:
S>>>Здравствуйте, Disappear, Вы писали: S>>>не пора. Сыроват
D>>Единственный способ сделать его стабильным, массово начав программировать
А>Начинай... А>В студенческих или разовых проектов еще можно попробовать. А>А если уже написаны тонны кода, то никто в здравом уме просто так язык не сменит.
А зачем что-то сменять? Есть бинарная совместимость на уровне obj-ектников. К старому хламу пишем кучу фасадов.
Здравствуйте, Disappear, Вы писали:
D>Здравствуйте, Аноним, Вы писали:
А>>Здравствуйте, Disappear, Вы писали:
D>>>Здравствуйте, Smal, Вы писали:
S>>>>Здравствуйте, Disappear, Вы писали: S>>>>не пора. Сыроват
D>>>Единственный способ сделать его стабильным, массово начав программировать
А>>Начинай... А>>В студенческих или разовых проектов еще можно попробовать. А>>А если уже написаны тонны кода, то никто в здравом уме просто так язык не сменит.
D>А зачем что-то сменять? Есть бинарная совместимость на уровне obj-ектников. К старому хламу пишем кучу фасадов.
И что это даст. Никаких библиотек под D особенно не наблюдается.
Такой переход должен быть экономически выгоден.
Здравствуйте, Disappear, Вы писали:
D>Не пора ли нам программировать на языке D (http://www.digitalmars.com/d/) ? D>Разве мы не заслужили
Я предлагаю вам привести какой-нибудь простой и ясный пример. Вот задача. Вот так она криво и плохо решается (или вообще не решается на C++). А вот так она красиво и грамотно решается на D. И сразу всё станет ясно и убедительно. Ссылка не убедила — язык без нормальных шаблонов, множественного наследования и макросов это шаг назад, а не вперёд, ИМХО. Да ещё и весьма сомнительный garbage collection. Я забыл как там у Страуструпа "C++ is my favorite garbage collection language, because it produces no garbage" или как-то так.
Здравствуйте, Smal, Вы писали:
S>Здравствуйте, Disappear, Вы писали:
S>И что это даст. Никаких библиотек под D особенно не наблюдается. S>Такой переход должен быть экономически выгоден.
Ну что-то уже есть, std например. Некоторые хорошие веши встроены в язык — string, lambda, boost::dynamic_bitset например.
А насколько был эффективен перепрыг скажем с VB на C# и.NET 1.0? Так поступило множество контор. Что там было экономически выгодно?
P.S. Мне самому факт перехода на неосвоенный человечеством язык вызывает не более чем гипотетически-астрономический интерес , но интересны также мнения...
Здравствуйте, Disappear, Вы писали:
D>А зачем что-то сменять? Есть бинарная совместимость на уровне obj-ектников. К старому хламу пишем кучу фасадов.
Бинарная совместимость — это то, что меньше всего будет реально волновать.
Она конечно нужна, но другие факторы куда важнее.
Кроме собственно компилятора нужны куча дополнительных тулов (дебаггеры, профайлеры, средства проектирования).
Нужна документация и книжки.
Ну и, наконец, нужны люди, знающие новый инструмент,
или как минимум, согласие менеджмента потратить время и деньги на обучение людей.
Если ты работаешь один, то все это тебя конечно не интересует.
А на реальных проектах просто так ничего не получится.
Да и сырой еще этот язык с туманной перспективой.
Здравствуйте, Tilir, Вы писали:
T>Здравствуйте, Disappear, Вы писали:
D>>Не пора ли нам программировать на языке D (http://www.digitalmars.com/d/) ? D>>Разве мы не заслужили
T>Я предлагаю вам привести какой-нибудь простой и ясный пример. Вот задача. Вот так она криво и плохо решается (или вообще не решается на C++). T>А вот так она красиво и грамотно решается на D. И сразу всё станет ясно и убедительно.
T>Ссылка не убедила — язык без нормальных шаблонов,
Т.е. в D ненормальные шаблоны? чем они отличаются от нормальных?
T>множественного наследования многие с Вами не согласятся. А часто вы используете множественное наследование?
T>и макросов это шаг назад,
T>а не вперёд, ИМХО.
T>Да ещё и весьма сомнительный garbage collection.
Еще в 98 году, когда миром правили микроконтроллеры, это было сомнительным.
T>Я забыл как там у Страуструпа "C++ is my favorite garbage collection language, because it produces no garbage" или как-то так.
В языке C++ его же идиому RAI сложно использовать.
Жду появления книги Walter Bright, The D Programming Language, чтобы можно было почитать в трамвае, на диване и вообще. Сидя за компьютером и так есть чем заняться.
T>>Ссылка не убедила — язык без нормальных шаблонов, D>Т.е. в D ненормальные шаблоны? чем они отличаются от нормальных?
Тоже самое можно и в С++, но в С++ шаблоны не только для этого...
T>>множественного наследования D> многие с Вами не согласятся. А часто вы используете множественное наследование?
Да, а вы понимаете данный термин?
T>>Да ещё и весьма сомнительный garbage collection. D>Еще в 98 году, когда миром правили микроконтроллеры, это было сомнительным.
T>>Я забыл как там у Страуструпа "C++ is my favorite garbage collection language, because it produces no garbage" или как-то так. D>В языке C++ его же идиому RAI сложно использовать.
Тут скорее так, в С++ ты можешь использовать GC и RAI, т.е. есть выбор, а это дополнительный плюс...
Здравствуйте, Disappear, Вы писали:
D>Долой прошлое, господа! D>Хватит уже ходить по граблям обратной совместимости с другими граблями.
D>Не пора ли нам программировать на языке D (http://www.digitalmars.com/d/) ? D>Разве мы не заслужили
Вот я считаю, что сейчас тон в программировании задают крупные компании (вы понимаете о ком я? ) — а это значит во главу угла ставится экономическая выгода (кто-то тут писал). Вот и имеем, то что имеем — монструозный, гипертрофированный, подчас не решающий достойно проблемы, и просто у@ищный (извините) C++ — когда десяками лет тянется старое, извините, говнооптимизации, #include — все нафик это устарело. И нет человека способного это прекратить волевым решением. Бесят смарт поинтеры (assist зачасту не способен на -> нормальную подсказку выдать, мытарства когда надо F11 при дебаге), бесит тормознутость C0x, бесит список инициализации (вместо int const member = 10. С другой стороны имеем C# — хорош, но нет в нем академичности. Ну создан он business-to-business, нет в нем чего-то "разумного, доброго, вечного". Как бы нам ни говорили, что он решает наши проблемы, C# прежде всего решает проблемы Microsoft. У него есть достойные применения, но это выглядит как "мы посовещались, и я решил — мир будет писать под .NET". Извините, а альтернативы? Надоело думать что ты мясо — .NET, Java, C#, С++ требования к программистам так и пухнут, а вместе с ними и башка, а ЗП почему-то неуклонно тянет вниз. Индустрия как будто ополоумила и развивается вширь как на дрожжах. Когда это прекратится и начнется движение в глубь? Наверно только с квантовыми компутерами, благо работаюший образей на днях представили.
А D мне нравится. Нет в нем шелухи, и как оказывается можно сочетать скорость и простоту (камень в огород C#). Один только cast()() — я вообще слюни пустил... А увидел this() конструктор так вообще... ААА!!! В общем, хочу, да нет еще достойной реализации... И тут взглянул на код C++ и понял в каком я дерьме копаюсь...
С++ это как в самолете — тошнит, а выйти некуда... Такие проблемы надо силой решать. D с завтрашнего дня и все тут! Думаю, что сначала это себе позволят маленькие конторки — 4-5 человек или конторы с небольшой историей. Окажется, что после этого они догонят более крупные — писать на D легче, программы лучше. Потом только зашевелятся средние. Но для них это будет больно — тонны кода... Кто-то из них умрет, а кто-то перейдет на D. А там и до гигантов прогресс дойдет Революция как известно с низов начинается. Так что нормальную IDE D и немного либов и все, delete С++
Не стыдно попасть в дерьмо, стыдно в нём остаться!
Здравствуйте, Disappear, Вы писали:
А>>А если уже написаны тонны кода, то никто в здравом уме просто так язык не сменит.
D>А зачем что-то сменять? Есть бинарная совместимость на уровне obj-ектников. К старому хламу пишем кучу фасадов.
Если на C++ получается писать только хлам — что ж, это выход
Здравствуйте, demi, Вы писали:
D>Вот и имеем, то что имеем — монструозный, гипертрофированный, подчас не решающий достойно проблемы, и просто у@ищный (извините) C++
Много эмоций, мало конкретики.
D>когда десяками лет тянется старое, извините, говнооптимизации
Что это такое?
D>И нет человека способного это прекратить волевым решением.
Конечно. Потому что очень много компаний используют C++.
D>Бесят смарт поинтеры (assist зачасту не способен на -> нормальную подсказку выдать, мытарства когда надо F11 при дебаге),
Не знаю.. У вас что сотни методов в классе? Если так то есть повод подумать над дизайном проекта.
D> бесит тормознутость C0x
По сравнению с чем ?
D>бесит список инициализации (вместо int const member = 10;
Ну да. Но этого явно недостаточно для смены языка. Мало ли что вас будет бесить в новом.
Здравствуйте, Tilir, Вы писали:
T> язык без нормальных шаблонов
В D шаблоны лучше, чем в C++
> множественного наследования
интерфейсы есть. Остальное не нужно. Собственно то, что множественного наследования в современных индустриальных яызках нет (за исключением С++) это подтверждает.
> макросов
Как это нет? cpp file.d > _file.d Суть в том, что макросы в D не нужны. Страуструп старательно вычищал С++ от макросов, Брайт завершил его дело.
> Да ещё и весьма сомнительный garbage collection. Я забыл как там у Страуструпа "C++ is my favorite garbage collection language, because it produces no garbage" или как-то так.
GC опциональный. При желании можно руками всё собирать. Кстати ничего, что в следующем стандарте С++ тоже будет GC ?
ANM> По сравнению с чем ?
Наверное по сравнению с dmd. Кстати да, субъективно компилятор D в десятки раз быстрее С++-ного. Всё стандартная библиотека (а там 60000 строк) у меня собирается за 2.5 секунды.