Здравствуйте, AndreiF, Вы писали:
E>>Если вам доводилось программировать на Qt, то вы должны знать, что moc-компилятор там используется безотносительно к GUI. Кроме того, поскольку QtDesigner не использует moc-компилятор, а именно moc-компилятор, по вашим словам добавляет в C++ Qt-шную рефлексию, то и QtDesigner не использует Qt-ную рефлексию.
AF>Изначально речь шла про "рефлексии не было и нет", тему ты очень ловко перевел. Ладно, будем считать, что со своей ошибкой ты согласился. Теперь далее. Не использует moc... а результаты работы moc он тоже ни в каком виде не использует?
Афигеть!
1. До тех пор, пока вы не укажите пункты C++ стандарта, описывающие рефлексию, в C++ ее не было и нет.
2. QtDesigner не использует результатов работы moc.
E>>Qt-шная рефлексия такая же стандартная для C++, как и моя ObjESSty-сериализация.
AF>Я и не говорю, что она стандартная. Но она есть. AF>Твоя самооценка крайне неадекватна. Qt используют многие тысячи программистов во всем мире, а твою библиотеку — хорошо, если десяток.
Меня очень устраивает то, что вы не используете ни Qt, ни ObjESSty.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Очень похоже на хардкод. Хуже чем MFC-шный дизайнер. Как создать и добавить свой контрол я так и не понял.
Я все же говорил не о наколенных поделках вроде "дизайнера MFC" когда все захардкожено и прибито гвоздями к полу, а о расширяемой среде в которую можно лекго добавить новый контрол и т.п.
E>Нехилый визуальный дизайнер был у Qt для C++, хотя в C++ не было и нет рефликсии вообще.
Для Qt был создано нехилое внешнее хранилище метаинформации и генератор кода ее обслуживающий. Причем получилось все равно убого.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, FR, Вы писали:
FR>Могу перефразировать, чтобы писать безопасно на C++ нужно быть очень опытным С++ программистом
Так и есть. Причем нужно быть еще доволно фанатично преданным этому языку, так как куда проще его попросту сменить. Ну, или к этому должны принуждать обстоятельства (работадатель, например).
FR>Не надо, код на любом тьюринг полном языке всегда можно транслировать на другой т — полный.
Заблуждаешся. Транслировать более низкоуровневый язык в более высокоуровневый практически невозможно. Это требует наличия ИИ. Ведь не все паттерны можно распознать. В более высокуровневом языке может просто небыть констуркций имеющихся в низкоуровневом. Попробуй ради хохмы транслировать на любой язык без указателей код основанный на адресной арифметике.
FR> Вот только на пратике это обычно только вручную получается, и мало зависит от уровней языков. (Даже нормальный си <-> паскаль трансляторов и то не видать)
Это и в теории, и на практике невозможно. Высокоуровневый в низкоуровневый нет проблем (точнее вся проблема в объеме работ). Обратно — хрен. Точнее можно только при условии, что высокоуровневый язык поддерживает работу на таком же низом уровне как и исходный низкоуровневый. Толко от такой трансляции обычно никакого толку нет.
FR>"Стать гуру" и "научится работать" далеко не одно и тоже.
Вот именно. Научиться писать — это значит освоить сам язык. А стать гуру — значит то, что ты как раз понимашь под обучением.
FR>У меня тоже и что?
У тебя только ощущение.
FR>А оно надо?
Мне — очень.
FR>Если и надо то очень редко.
Тебе? Возможно...
FR>К тому же и N не позволяет улучшать инструмент неограничено. Попробуй например ввести туда объектную сиcтему из CLOS.
Объектана система там уже мощьнее чем в CLOS.
Тет только мультиметодов и множественного наследования. И первое, и второе можно реализовать на макросах (собственно весь CLOS сделан на макросах), но никому не нужно.
FR>>>D практически содержит подмножество, в которое входит почти вся java
VD>>Это чушь. В Ди ЖЦ не основной инструмент управления памятью.
FR>При чем тут язык?
Да. Казалось бы причем тут язык? Я фигею.
FR>(При портировании конечно надо это учитывать)
Это невозможно учитывать. Код написанный на Яве рассчитан на то что помять всегда управляется ЖЦ. Произвести автоматическую конвертацию со сменой парадигмы невозможно. Точка.
FR>Как это мешает портировнию из явы?
Мешает никудышный результат. Ди не предназначин для написания кода в стиле Явы. Портированные приложения будут работать хже чем на яве.
FR>По сравнению с третим шарпом, D вполне на уровне.
И в подметки не годится. А Шарп довольно примитивный язык.
FR>N и S из другой песочницы.
Незнаю, что такое S и смутнро догадываюсь, что такое N, но точно знаю, что песочницы тут не причем. Дрова на D вряд ли будет кто писать. А все остальное можно писать на чем угодно.
FR>Посмотри на dfl не удивлюсь если нектоые примеры и на шарпе скомпилируются.
Начнем с подмены поняий. Я говорил о C# 3.0. Ты же сравнивашь какие-то бибилиотеки для ГУИ.
Ну, да ладно. ОК. Давай простой эксперемент. Вот примитивнеший код:
public class MyControl : System.Windows.Forms.TextBox
{
public MyControl() { BackColor = System.Drawing.Color.Aqua; }
}
Вот покажи, как этот код заработает в этом дизайнере.
Надеюсь не надо объяснять, что в случае с дотнетом достаточно добавить ссыклу на длл или проект?
VD>>Ну, что же подождем когда Ди доростет до WPF .
FR>Фигня, язык все это позволяет реализовать.
Без нормально то ЖЦ и рефлекшона? Гы-гы. Представляю себе это чудо.
VD>>Что-то мне кажется, что на таком языке их будет очень не просто реализовать. Рефлексии ведь вроде нет и в помине?
FR>Ну конечно куча редакторов форм на дельфи, бейсике, C++, и даже на си, подтверждают эту твою мысль
Ты или вообще не в теме, или откровенно лукавишь.
Дельфи и Васик обладают механизмами анлогичными рефлексии. К С++ ни одного полноценного редактора форм так и не сделано. Ну, за исключением С++Билдерного который создан не для С++, а для его расширения так же снабженного метаинформацией. Qt-ёвый редактор тоже эмулирует метаинформацию, да и сильно убог.
VD>>Разделяй. Только тогда зачем тебе Ди? Геморрой в лучшем виде создается на С++.
FR>Геморой он языконезависим
Да ладно тебе. Ты давно форум по С++ то читал? Сравни его с тем же дотентным. Погляди сколько вопросов там, и там.
FR>Кому как, я не только шоколадом питаюсь но и кортошкой тоже не брезгую. FR>А вообще не смотри никто ни заставляет.
Ды что и делаю с большим удовольствием. Точнее посмотрел я на Ди, но второй раз уже не охота. Ну, не вижу в этом смысла.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
E>>Нехилый визуальный дизайнер был у Qt для C++, хотя в C++ не было и нет рефликсии вообще.
VD>Для Qt был создано нехилое внешнее хранилище метаинформации и генератор кода ее обслуживающий. Причем получилось все равно убого.
Еще один знаток, блин.
Я вот, например, видел убогий Янус. На классном языке написанный, с дизайнером форм гибким.
Еще я вижу написанный на правильных управляемых платформах сайт, ложившися в даун раза четыре за последнее полгода.
Это нормально. А вот в Qt все убого. Аминь.
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, eao197, Вы писали:
E>Еще один знаток, блин.
Ага. А что завидно?
E>Я вот, например, видел убогий Янус. На классном языке написанный, с дизайнером форм гибким. E>Еще я вижу написанный на правильных управляемых платформах сайт, ложившися в даун раза четыре за последнее полгода.
Это что. Я вот слышал о Янусе на С++ и многое другое. Например, про SObjectizer (тм).
Про их надежность сказать ничего не могу. Потому как они как неуловимый Джо .
E>Это нормально. А вот в Qt все убого. Аминь.
Ну, убого, что тут поделаешь?
ЗЫ
А вообще, чья бы корова мычала. Ты сначала сам создай сайт который будет в режиме 24*7 работать и выдерживать нагрузку в 15 тысяч посетителей в день и 200 000+ обращений. Тогда по рассуждаешь, что кривое, что прямое. Сожешь за одно Шаридану помочь с С++-ным клоном Януса. А то Янус то уже поди как лет 5 живет, а этот проект все только в мыслях есть.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, eao197, Вы писали:
E>Настолько, что ты даже не можешь им воспользоваться?
Ну, мне оно не надо.
E>Подглючевает временами поиск-то, особенно если включена галка отдельного форума.
Ну, это к разработчикам Меты. Они его видимо на С++ писали .
А вобще, я тебе пример привел из продукта на который ты сам пальцем указал. Но ты это благополучно поскипал и до поиска докапался. Видмо тебе нужно просто тупо пофлэймить.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Например, про SObjectizer (тм). VD>Про их надежность сказать ничего не могу. Потому как они как неуловимый Джо .
В это-то и вся разница: я говорю о том, чем пользовался. А ты о том, в чем не разбираешься.
VD>А вообще, чья бы корова мычала. Ты сначала сам создай сайт который будет в режиме 24*7 работать и выдерживать нагрузку в 15 тысяч посетителей в день и 200 000+ обращений. Тогда по рассуждаешь, что кривое, что прямое.
Т.е. у тебя такой сайт создать не удалось, предлагаешь мне попробовать?
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, eao197, Вы писали:
E>В это-то и вся разница: я говорю о том, чем пользовался. А ты о том, в чем не разбираешься.
Вообще смешно слушать от полнешего блаба разглагольствующего о том в чем он ничего ровным счетом не понимает о том, что кто-то в чем-то не разбирается.
Ну, да считай, что хочешь. Твои проблемы.
E>Т.е. у тебя такой сайт создать не удалось,
Да, да. Уверяй себя в этом каждый раз когда заходишь на этот сайт.
E>предлагаешь мне попробовать?
Да ни в коем случае. Трепись и дальше о том что никогда не пробовал и ищи проблемы в чужой работе. Так прикольнее.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
FR>>Могу перефразировать, чтобы писать безопасно на C++ нужно быть очень опытным С++ программистом
VD>Так и есть. Причем нужно быть еще доволно фанатично преданным этому языку, так как куда проще его попросту сменить. Ну, или к этому должны принуждать обстоятельства (работадатель, например).
Не надо фанатизма, большинству хватает привычки.
FR>>Не надо, код на любом тьюринг полном языке всегда можно транслировать на другой т — полный.
VD>Заблуждаешся. Транслировать более низкоуровневый язык в более высокоуровневый практически невозможно. Это требует наличия ИИ. Ведь не все паттерны можно распознать. В более высокуровневом языке может просто небыть констуркций имеющихся в низкоуровневом. Попробуй ради хохмы транслировать на любой язык без указателей код основанный на адресной арифметике.
Вполне возможно. В высокоуровневом языке реализуешь модель памяти низкоуровнего и транслируешь на эту модель низкоуровневую работу с указателями:
class pointer;
class memory;
// и т. д.
В функциональщине тоже можно вывернутся с помощью фвп и глобальных контекстов.
Про производительность решения конечно помолчу
FR>> Вот только на пратике это обычно только вручную получается, и мало зависит от уровней языков. (Даже нормальный си <-> паскаль трансляторов и то не видать)
VD>Это и в теории, и на практике невозможно. Высокоуровневый в низкоуровневый нет проблем (точнее вся проблема в объеме работ). Обратно — хрен. Точнее можно только при условии, что высокоуровневый язык поддерживает работу на таком же низом уровне как и исходный низкоуровневый. Толко от такой трансляции обычно никакого толку нет.
В теории возможно и доказано лет 70 назад.
На практике тоже в крайнем случае просто создав интерпретатор низкоуровнего языка на высокоуровневом.
FR>>"Стать гуру" и "научится работать" далеко не одно и тоже.
VD>Вот именно. Научиться писать — это значит освоить сам язык. А стать гуру — значит то, что ты как раз понимашь под обучением.
То что я понимаю под обучением лежит между твоим "ознокомится" и "стать гуру".
FR>>У меня тоже и что?
VD>У тебя только ощущение.
У тебя тоже
FR>>К тому же и N не позволяет улучшать инструмент неограничено. Попробуй например ввести туда объектную сиcтему из CLOS.
VD>Объектана система там уже мощьнее чем в CLOS.
Ну конечно
VD>Да. Казалось бы причем тут язык? Я фигею.
FR>>(При портировании конечно надо это учитывать)
VD>Это невозможно учитывать. Код написанный на Яве рассчитан на то что помять всегда управляется ЖЦ. Произвести автоматическую конвертацию со сменой парадигмы невозможно. Точка.
Ну так конкретную библиотеку уже портировали.
FR>>Как это мешает портировнию из явы?
VD>Мешает никудышный результат. Ди не предназначин для написания кода в стиле Явы. Портированные приложения будут работать хже чем на яве.
С этим в общем согласен.
Но сам то язык это позволяет, на С++ портировать гораздо сложнее.
FR>>По сравнению с третим шарпом, D вполне на уровне.
VD>И в подметки не годится. А Шарп довольно примитивный язык.
Голословное утверждение.
FR>>N и S из другой песочницы.
VD>Незнаю, что такое S и смутнро догадываюсь, что такое N, но точно знаю, что песочницы тут не причем. Дрова на D вряд ли будет кто писать. А все остальное можно писать на чем угодно.
Ну конечно.
FR>>Посмотри на dfl не удивлюсь если нектоые примеры и на шарпе скомпилируются.
VD>Начнем с подмены поняий. Я говорил о C# 3.0. Ты же сравнивашь какие-то бибилиотеки для ГУИ.
Мне кажется это уже ты запутался о чем говорили. Я говорил что GUI библиотеки на D из шарпа и явы легко портируютсяы на D.
VD>Ну, да ладно. ОК. Давай простой эксперемент. Вот примитивнеший код: VD>
VD>public class MyControl : System.Windows.Forms.TextBox
VD>{
VD> public MyControl() { BackColor = System.Drawing.Color.Aqua; }
VD>}
VD>
. Ты там даже плюсик поставил.
VD>Вот покажи, как этот код заработает в этом дизайнере.
VD>Надеюсь не надо объяснять, что в случае с дотнетом достаточно добавить ссыклу на длл или проект?
Будет все это со временем.
FR>>Ну конечно куча редакторов форм на дельфи, бейсике, C++, и даже на си, подтверждают эту твою мысль
VD>Ты или вообще не в теме, или откровенно лукавишь. VD>Дельфи и Васик обладают механизмами анлогичными рефлексии. К С++ ни одного полноценного редактора форм так и не сделано. Ну, за исключением С++Билдерного который создан не для С++, а для его расширения так же снабженного метаинформацией. Qt-ёвый редактор тоже эмулирует метаинформацию, да и сильно убог.
Для редактора форм не нужна полноценная рефлексия. Того что уже есть в D (не меньше чем в delphi) вполне хватит.
FR>>Кому как, я не только шоколадом питаюсь но и кортошкой тоже не брезгую. FR>>А вообще не смотри никто ни заставляет.
VD>Ды что и делаю с большим удовольствием. Точнее посмотрел я на Ди, но второй раз уже не охота. Ну, не вижу в этом смысла.
Здравствуйте, eao197, Вы писали:
E>Зашел, удостоверился: E>
Кстати да. Колбасить его в последнее время начало частенько.
И еще, я не хочу умалять усилий его создателей (тратящих, как минимум, своё время), но, Влад, 200'000 хитов/24 часа для почти статического сайта это далеко не предел.
Здравствуйте, AndrewVK, Вы писали:
ANS>>200'000 хитов/24 часа для почти статического сайта
AVK>99% реальных запросов к rsdn динамические с обращением к БД.
Ошибочно написал — не статического, а R/O. Или опять ошибся?
Здравствуйте, eao197, Вы писали:
E>Зашел, удостоверился:...
Это мне напоминает анекдот:
Старый арменин рассказывает своим детям...
— Во время войны — дети — нас поймали фашсты. Они нам сказали "Или ми надругаемся над вами по голубому, или убъёом!
— И что деда?
— Что, что? Надовсеми кроме меня надругались!
— А ты, деда?
— А я, дети, умер!
Так же и ты отвечаешь через тот самый форум и рассказываешь, что он не работает.
А ошибки... Мало ли чего бывает. Над сервером одновременно эксперементируют сразу несколько архаровцев. Тут что хочешь может случиться. Плюс еще бывают железные проблемы.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.