Здравствуйте, AndrewVK, Вы писали:
AVK>Здравствуйте, eao197, Вы писали:
E>>Под "слухами" я имел в виду не то, что новый продукт создается, а то, что его D называют
AVK>D это внутреннее имя.
Вот и забавно: когда крутишься рядом с D, то кажется, что о нем все знают. А тут выясняется, что не все, раз такое "раскрученное" название используют в качестве внутреннего имени нового проекта.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Walter Bright Wrote: > Today I talked with some Microsoft insiders, and they assured me that > there would be no forthcoming official product from Microsoft named > "D". > > Here's the official Microsoft position: > > "For any existing work on languages currently under development, we have > no plans to use the name 'D' as a final product brand." -- Microsoft > > And that closes the matter.
And, with that, I look forward to the imminent release of D# ...
Язык D продолжает развиваться. Как здесь уже говорилось, к разработке дизайна языка и его стандартных библиотек подключился Андрей Александреску. Вскоре после этого появилась версия D2.0, в которой в язык была добавлена константность. В течении прошедшего с тех пор времени реализация константности в D2 менялась. Но, по последним заявлениям Брайта, сейчас ее вид близок к тому, что Брайту и Александреску хотелось бы иметь.
Здравствуйте, eao197, Вы писали:
E>Вот свежая презентация от Александреску о том, какие цели ставятся перед константностью в D2 и почему константность именно такая, какая она сейчас есть: E>Grafting Functional Support on Top of an Imperative Language (PDF, 132K, 37 слайдов).
То есть практически получается что у D будет чисто функциональное подмножество используя которое можно писать гарантировано без побочных эффектов?
Если так то очень интерсно.
Здравствуйте, FR, Вы писали:
FR>Здравствуйте, eao197, Вы писали:
E>>Вот свежая презентация от Александреску о том, какие цели ставятся перед константностью в D2 и почему константность именно такая, какая она сейчас есть: E>>Grafting Functional Support on Top of an Imperative Language (PDF, 132K, 37 слайдов).
FR>То есть практически получается что у D будет чисто функциональное подмножество используя которое можно писать гарантировано без побочных эффектов? FR>Если так то очень интерсно.
Да, насколько я понимаю цели Брайта и Александреску -- именно этого они и добиваются. Для этого в язык недавно было введено ключевое слово pure. И у меня сложилось впечатление, что в одной из ближайших версий D2 оно уже будет задействованно. По крайней мере, в какой-то конференции Брайт сказал "pure is comming"
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, FR, Вы писали:
VD>>Так что пусть он конечно будет. Это будет как минимум хорошим упреком Страуструпу. Но хватсаться его убогими фичами явно не стоит. Иначе все время будете получать в пример языки в которых тоже самое и намного больше реализовано куда лучше и уже работает. И снова будете злиться и кричать "а причем тут Немерле?".
FR>Мне кажется Немерле с такими горе агитаторами может оказатся в полной ж... FR>В общем ничего кроме медвежьей услуги таким спамом не по теме вы Немерле не оказываете. FR>Кстати где модераторы, раньше злобных функциональщиков за такое же поведение банили.
А по мне так в целом вполне нормальная реклама. Я писал на C++, C#, C#2.0, C#3.0, Nemerle. И я не случайно выстроил их именно в таком порядке — это нормальный прогрессивный процесс эволюции языков программирования.
Так держать! Любые выпады в сторону Немерле только добавят ему популярности, чему я только рад
Здравствуйте, gloomy rocker, Вы писали:
GR>А по мне так в целом вполне нормальная реклама. Я писал на C++, C#, C#2.0, C#3.0, Nemerle. И я не случайно выстроил их именно в таком порядке — это нормальный прогрессивный процесс эволюции языков программирования. GR>Так держать! Любые выпады в сторону Немерле только добавят ему популярности, чему я только рад
Популярность она разная бывает, здешний рассцвет культа ничего кроме оталкивания многих вменяемых людей по моему ни принес.
Здравствуйте, gloomy rocker, Вы писали:
GR>А по мне так в целом вполне нормальная реклама. Я писал на C++, C#, C#2.0, C#3.0, Nemerle. И я не случайно выстроил их именно в таком порядке — это нормальный прогрессивный процесс эволюции языков программирования.
Ну ёпть! Уже давно и не сомневается никто, поскольку есть только две абсолютные вещи: ".NET -- наше все" и "нет жизни за пределами МКАД".
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, eao197, Вы писали:
E>Здравствуйте, gloomy rocker, Вы писали:
GR>>А по мне так в целом вполне нормальная реклама. Я писал на C++, C#, C#2.0, C#3.0, Nemerle. И я не случайно выстроил их именно в таком порядке — это нормальный прогрессивный процесс эволюции языков программирования.
E>Ну ёпть! Уже давно и не сомневается никто, поскольку есть только две абсолютные вещи: ".NET -- наше все" и "нет жизни за пределами МКАД".
Угу. А вот нормальный процесс эволюции программиста: "Березовская — Новосибирск — Зеленоград — Москва — Дармштадт — Ванкувер — Сан-Франциско — Карибский бассейн". Ты что-то рано финал обозначил.
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Sinclair, Вы писали:
S>Здравствуйте, eao197, Вы писали:
E>>Здравствуйте, gloomy rocker, Вы писали:
GR>>>А по мне так в целом вполне нормальная реклама. Я писал на C++, C#, C#2.0, C#3.0, Nemerle. И я не случайно выстроил их именно в таком порядке — это нормальный прогрессивный процесс эволюции языков программирования.
E>>Ну ёпть! Уже давно и не сомневается никто, поскольку есть только две абсолютные вещи: ".NET -- наше все" и "нет жизни за пределами МКАД". S>Угу. А вот нормальный процесс эволюции программиста: "Березовская — Новосибирск — Зеленоград — Москва — Дармштадт — Ванкувер — Сан-Франциско — Карибский бассейн". Ты что-то рано финал обозначил.
А можно из Новосибирска сразу в Карибский бассейн?
Здравствуйте, anton_t, Вы писали:
E>>>Ну ёпть! Уже давно и не сомневается никто, поскольку есть только две абсолютные вещи: ".NET -- наше все" и "нет жизни за пределами МКАД". S>>Угу. А вот нормальный процесс эволюции программиста: "Березовская — Новосибирск — Зеленоград — Москва — Дармштадт — Ванкувер — Сан-Франциско — Карибский бассейн". Ты что-то рано финал обозначил.
_>А можно из Новосибирска сразу в Карибский бассейн?
Думаю можно, но есть сомнения что ЗП при этом значительно изменится.
Побеждающий других — силен,
Побеждающий себя — Могущественен.
Лао Цзы
Здравствуйте, eao197, Вы писали:
E>Вот свежая презентация от Александреску о том, какие цели ставятся перед константностью в D2 и почему константность именно такая, какая она сейчас есть: E>Grafting Functional Support on Top of an Imperative Language (PDF, 132K, 37 слайдов).
Что же Ди движется в нужном направлении. Фичу вроде pure должен иметь любой гибридный язык (поддерживающий ФП и ИП). Не помешала бы она и в Немерле. Сейчас может от этого толку и мало, но в будущем эта подсказка компилятору способна решить многие проблемы.
Вопрос можно ли дойти до логической полноты двигаясь так поступательно. Язык еще не вышел, а уже весь погряз в эволюционном процессе. В конце концов введение ограничений далеко не самое нужное для хорошей поддержки ФП. На мой взгляд им нужно обратить внимание на более важные аспекты: уменьшить шум при описании локальных функций и лямбд, ввести паттерн-матчинг и поддержку алгебраических типов данных, создать набор стандартных функций (fold, map, и т.п.).
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Sinclair, Вы писали:
S>Угу. А вот нормальный процесс эволюции программиста: "Березовская — Новосибирск — Зеленоград — Москва — Дармштадт — Ванкувер — Сан-Франциско — Карибский бассейн".
Или Редмонд-Гавайи. МС тут офис на Гавайях открыл ... И даже MVP один имеется.
... <<RSDN@Home 1.2.0 alpha 4 rev. 1082 on Windows Vista 6.0.6001.65536>>
Здравствуйте, VladD2, Вы писали:
VD>ОК, но это один из 3 пунктов. К тому же не ясно почему строки вместо выражений и зачем нужно было вводить вторые скобки. Сравни сам. VD>D: VD>
int[] arr = [ 1, 2, 3, 4, 5 ];
VD>// Sum all elements
VD>auto sum = reduce!("a + b")(0, arr);
VD>assert(sum == 15);
VD>
VD>Nemerle: VD>
def arr = array[1, 2, 3, 4, 5];
VD>// Sum all elements
VD>def sum = arr.Fold(0, _ + _);
VD>assert(sum == 15);
VD>
VD>Причем этот код скопмпилируется только последними версиями D в то время как в Немерле это было с рождения (2004-ом году).
"a + b" как я понимаю mixin. Это ограничение языка, ничего уж тут не поделаешь.
Здравствуйте, VladD2, Вы писали:
VD>ОК, но это один из 3 пунктов.
Остальные в работе, обещали к осени вместе с релизом второй версии. Шум с лямбдами скорее всего останется, паттерн матчинг будет (довольно ограниченно) подерживатся в макросах, варианты скорее всего можно будет в более — менее удобоваримом виде соорудить на макросах.
VD>К тому же не ясно почему строки вместо выражений и зачем нужно было вводить вторые скобки. Сравни сам.
Это миксины, которые как говорил Вальтер нельзя использовать для таких целей, но пришел Александреску и все испортил
По сравнению с немерли вполне нормально, для "улучшенного C++"
VD>Причем этот код скопмпилируется только последними версиями D в то время как в Немерле это было с рождения (2004-ом году).
Было бы удивительно если этого не было в потомке Окамла
Здравствуйте, FR, Вы писали:
FR>Это миксины, которые как говорил Вальтер нельзя использовать для таких целей, но пришел Александреску и все испортил
FR>По сравнению с немерли вполне нормально, для "улучшенного C++"
По сравнению с Немерле грязновато. Насколько я помню в бустре были очень похожие вещи. Тоже грязненько, но как-то работает. Так что могу согласиться только с тем, что это в духе С++.
FR>Было бы удивительно если этого не было в потомке Окамла
А кто мешал перед созданием "улучшенного C++" изучить не только С++, но еще и тот самый ОКамл? Даже Степанов это проделал. Не в его силах, конечно, было улучшить С++, чтобы получилось красиво, но тем не менее STL получился весьма функциональным (насколько это возможно в С++).
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
FR>>По сравнению с немерли вполне нормально, для "улучшенного C++"
VD>По сравнению с Немерле грязновато. Насколько я помню в бустре были очень похожие вещи. Тоже грязненько, но как-то работает. Так что могу согласиться только с тем, что это в духе С++.
Нет не в духе, в духе C++ нужно было бы сделать на трехэтажных шаблонах, и получилось бы намного кривее
С бустом не сравнить, там шаг влево шаг вправо расстрел. Здесь все работает нормально а не как-то.
FR>>Было бы удивительно если этого не было в потомке Окамла
VD>А кто мешал перед созданием "улучшенного C++" изучить не только С++, но еще и тот самый ОКамл? Даже Степанов это проделал. Не в его силах, конечно, было улучшить С++, чтобы получилось красиво, но тем не менее STL получился весьма функциональным (насколько это возможно в С++).