Здравствуйте, eao197, Вы писали:
E>Я думаю, приверженцы Nemerle могут только мечтать оказаться когда-нибудь в такой же ситуации, в которой Eiffel пребывает сейчас.
В ситуации когда язык никому не нужен роме некоторых контор куда его проталкнули за откаты?
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, eao197, Вы писали:
E>>Я думаю, приверженцы Nemerle могут только мечтать оказаться когда-нибудь в такой же ситуации, в которой Eiffel пребывает сейчас. WH>В ситуации когда язык никому не нужен роме некоторых контор куда его проталкнули за откаты?
Попробуйте довести Nemerle хотя бы до такого состояния.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, Трурль, Вы писали:
E>>Я таки услышу ответ на вопрос о том, к пределу какой сложности приближается разработка современных языков программирования? Т>
Я по секрету сознаюсь, что этот компилятор с Модулы уже на пределе допустимой сложности, и я бы чувствовал себя совершенно неспособным создать хороший компилятор для Ады.
Т>Н. Вирт
Здесь видимо уместно задать вопрос: какую сложность автор считает допустимой?
Здравствуйте, eao197, Вы писали:
E>А кстати, где именно Брайт поставил перед собой такую задачу? Где он декларировал, что D является непосредственной заменой C++?
Читаю например результаты поиска в гугле и вижу в первой же ссылке:
Compiled, garbage collected, simpler C/C++ replacement
E>Полного интеропа, кстати, все равно не было.
Его было вполне достаточно, чтобы использовать старый код без переделки и написания оберток на каждую функцию.
E>Если эта задача кажется важной только вам, это не значит, что кто-то другой ее вообще видит.
Ну всё, опять начался бессмысленный поток сознания. А если я докажу что это не так, что будешь делать?
Здравствуйте, Andrei F., Вы писали:
AF>Здравствуйте, eao197, Вы писали:
E>>А кстати, где именно Брайт поставил перед собой такую задачу? Где он декларировал, что D является непосредственной заменой C++?
AF>Читаю например результаты поиска в гугле и вижу в первой же ссылке: AF>Compiled, garbage collected, simpler C/C++ replacement
Ну вот, когда факты таки есть, вы способны их найти и предьявить.
Значит, если вы никаких фактов в других случаях не приводите...
E>>Полного интеропа, кстати, все равно не было.
AF>Его было вполне достаточно, чтобы использовать старый код без переделки и написания оберток на каждую функцию.
Но ведь и C был подмножеством C++, даже на уровне синтаксиса. И все равно совместимости 100% не было. Разве можно сказать, что C++ является подмножеством D?
E>>Если эта задача кажется важной только вам, это не значит, что кто-то другой ее вообще видит.
AF>Ну всё, опять начался бессмысленный поток сознания. А если я докажу что это не так, что будешь делать?
Попробуйте сначала доказать. Я решаю проблемы по мере их поступления.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, eao197, Вы писали:
E>Ну вот, когда факты таки есть, вы способны их найти и предьявить. E>Значит, если вы никаких фактов в других случаях не приводите...
Ну, тут есть несколько вариантов
а) лень доказывать очевидные вещи
б) есть сильные сомнения, что доказательства будут поняты
в) или вообще будет хотя бы попытка их понять
г) доказательств действительно нет
В данном случае актуальны варианты б) и в)
E>Но ведь и C был подмножеством C++, даже на уровне синтаксиса. И все равно совместимости 100% не было.
Есть большая разница между "совместимостью на 90%" и "совместимостью на 10%". Или ты ее тоже не видишь?
E>Попробуйте сначала доказать. Я решаю проблемы по мере их поступления.
Ну так вот, на сайте написано про "the limited ability described here to connect directly to C++ functions and classes.". Значит — число тех, кто считает эту фичу нужной, достаточно велико чтобы убедить разработчика. Ну так что?
Здравствуйте, Andrei F., Вы писали:
AF>Здравствуйте, eao197, Вы писали:
E>>Ну вот, когда факты таки есть, вы способны их найти и предьявить. E>>Значит, если вы никаких фактов в других случаях не приводите...
AF>Ну, тут есть несколько вариантов AF>а) лень доказывать очевидные вещи AF>б) есть сильные сомнения, что доказательства будут поняты AF>в) или вообще будет хотя бы попытка их понять AF>г) доказательств действительно нет
AF>В данном случае актуальны варианты б) и в)
Свое самомнение вы доказали с блеском.
E>>Но ведь и C был подмножеством C++, даже на уровне синтаксиса. И все равно совместимости 100% не было.
AF>Есть большая разница между "совместимостью на 90%" и "совместимостью на 10%". Или ты ее тоже не видишь?
Разница огромная, но даже при совместимости на 90% процентов (а между C и C++ она была больше), приходилось прилагать усилия для интеграции C-ного и C++ного кода.
E>>Попробуйте сначала доказать. Я решаю проблемы по мере их поступления.
AF>Ну так вот, на сайте написано про "the limited ability described here to connect directly to C++ functions and classes.". Значит — число тех, кто считает эту фичу нужной, достаточно велико чтобы убедить разработчика.
Но потребности тех, кто считают эту фичу нужной, не достаточны для того, чтобы обеспечить совместимость на уровне шаблонов и STL. И раз такая поддержка объявлена невозможной, значит нет в этом достаточной необходимости.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, eao197, Вы писали:
E>Но потребности тех, кто считают эту фичу нужной, не достаточны для того, чтобы обеспечить совместимость на уровне шаблонов и STL. И раз такая поддержка объявлена невозможной, значит нет в этом достаточной необходимости.
Раньше и просто интероп с С++ был объявлен невозможным. Потому что для этого необходим правильный name mangling, а это невозможно и вообще ненужно.
E>Свое самомнение вы доказали с блеском.
Нет, это просто результат исследования некоторых тем, где ты долго и упорно не мог понять разницу между динамической типизацией и выводом типов, или между текстовыми макросами и AST-макросами. У меня нет пары недель на то, чтобы чего-то тебе доказать, а самое главное — зачем?
Здравствуйте, Andrei F., Вы писали:
AF>Здравствуйте, eao197, Вы писали:
E>>А кстати, где именно Брайт поставил перед собой такую задачу? Где он декларировал, что D является непосредственной заменой C++?
AF>Читаю например результаты поиска в гугле и вижу в первой же ссылке: AF>Compiled, garbage collected, simpler C/C++ replacement
Ты не там ищешь проблемы у D.
Основная проблема в том что автор не может остановится. Перестать добавлять фичи и выпустить нормальный твердый релиз. Фич уже вполне достаточно. Меня, и думаю большинство тех кому D симпатичен, от его серъезного использования останавливает только это.
Если язык стабилизируется будут и обертки к C++ и будут библиотеки. Просто задача сделать обертки к C++ типа SWIG или на шаблонах (типа boost::python) вещи достаточно объемные и надо сейчас очень сильно рисковать чтобы сейчас начинать такое.
Здравствуйте, FR, Вы писали:
FR>Ты не там ищешь проблемы у D. FR>Основная проблема в том что автор не может остановится. Перестать добавлять фичи и выпустить нормальный твердый релиз. Фич уже вполне достаточно.
Кстати, при наличии AST-макросов это не было бы проблемой. А вообще — согласен.
Здравствуйте, FR, Вы писали:
AF>>С трудом представляю, что можно менять в ядре, тем более — постоянно FR>Я думаю просто нужно чтобы Aлександреску заинтересовался Немерле
Он ничего не придумает.
Да и что можно придумать если уже есть полные по Тьюрингу макросы?
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, Andrei F., Вы писали:
AF>Здравствуйте, eao197, Вы писали:
E>>Но потребности тех, кто считают эту фичу нужной, не достаточны для того, чтобы обеспечить совместимость на уровне шаблонов и STL. И раз такая поддержка объявлена невозможной, значит нет в этом достаточной необходимости.
AF>Раньше и просто интероп с С++ был объявлен невозможным.
Раньше и шаблонов в D не было. И константности.
И история показывает, что Брайт зачатую принимает решения, от которых впоследствии сам же и отказывается. Нет никаких гарантий, что даже такая поддержка C++ не является очередным ошибочным шагом.
AF> Потому что для этого необходим правильный name mangling, а это невозможно и вообще ненужно.
Раньше я думал, что ваша настойчивость определяется только вашим упрямством. Но теперь видно, что это следствие элементарного незнания ни D, ни C++. Возможно, вам бы помогло изучение этих языков и обдумывание того, почему у MS с чистым C++ом в .NET ничего не получилось.
E>>Свое самомнение вы доказали с блеском.
AF>Нет, это просто результат исследования некоторых тем, где ты долго и упорно не мог понять разницу между динамической типизацией и выводом типов, или между текстовыми макросами и AST-макросами.
Польщен тем, что мои высказывания стали следствием исследования.
Однако, если бы вы читали то, что я пишу здесь, то могли бы увидеть, что я разговариваю с вами на "Вы" и был бы признателен, если бы вы поступали так же.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, WolfHound, Вы писали:
FR>>Я думаю просто нужно чтобы Aлександреску заинтересовался Немерле WH>Он ничего не придумает. WH>Да и что можно придумать если уже есть полные по Тьюрингу макросы?
Даже я могу кучу вещей придумать в которых полные по тьюрингу макросы мало чем помогут, например добавь подержку продолжений ( http://en.wikipedia.org/wiki/Continuation ), или мультиметов в стиле CLOS, или нормальную ленивость, думаю в этот список можно еще немало вещей добавить и со временем список будет только расти.
Здравствуйте, EvilChild, Вы писали:
WH>>Коротко нельзя да и НДА. EC>Тогда как аргумент в пользу макросов это звучит малоубедительно.
Представь любую ситуацию, при которой обычно ты пользуешь кодогенерацию, дабы не плодить мануальный копи-пейст.
Иногда подобные ситуации связаны с ограничениями в языке. Поскольку я работаю на Яве, то могу много про это рассказать В C# с этим получше, но не замечательно. Вообще, ИМХО, чем больше в языке конструкций являются first-class citizen, тем лучше — нет ограничений на их применение. Если же ограничения есть, то приходится для двух схожих задач, отличных только по этим ограничениям применять два схожих куска кода вместо одного. Эту дыру можно прикрыть кодогенерацией или макросами (на них можно смотреть, как на один из способов кодогенерации).
Здравствуйте, EvilChild, Вы писали:
EC>Здесь видимо уместно задать вопрос: какую сложность автор считает допустимой?
Примерно так:
Если нет одного индивидуума, понимающего проект во всей его полноте или хотя бы в весьма значительной степени подробностей, то с большой вероятностью система построена не будет.
Здравствуйте, FR, Вы писали:
FR>Даже я могу кучу вещей придумать в которых полные по тьюрингу макросы мало чем помогут, например добавь подержку продолжений ( http://en.wikipedia.org/wiki/Continuation ),
FR>или мультиметов в стиле CLOS,
Мультиметоды зло ибо их семантика слишком размыта.
Слишком много если...
FR>или нормальную ленивость,
Что значит нормальную?
Эта нормальная или нет http://nemerle.org/Lazy_evaluation
FR>думаю в этот список можно еще немало вещей добавить и со временем список будет только расти.
Попробуй.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, remark, Вы писали:
R>>Хммм.... Похоже ты его боишься... R>>Иначе почему вообще столько внимания и желания унизить такую "кривую" и "бесполезную" штуку?