Здравствуйте, Cyberax, Вы писали:
>> C>Имена, фамилии, явки учеников Вирта, создавших .NET (точнее >> слизавших ее >> C>архитектуру с Java) .... >> Например, Шиперски (Sziperski) — один из основателей Oberon Microsystems.
C>И? Гугл выдает на нее 10000 ссылок, и даже сайта на английском у них нет.
Есть, искал плохо: Clemens Szyperski at Microsoft Research
>> Поправочка: именно Java слизана с Оберона. C>Java ни с чего не слизана — она весьма отличается от Оберона (одно лишь C>наличие GC и системы пакетов — не признак слизанности).
Ну а вот что говорят инженеры из Sun Microsystems, Robert Griesemer & Srdjan Mitrovic:
Not coincidentally, the compilers developed by Niklaus Wirth for Modula-2 and Oberon followed a similar guideline [achievement of 80% of the performance of the server VM with 20% of the effort]. We have studied those compilers extensively and have borrowed ideas literally.
Статья называется "A compiler for the Java HotSpot(tm) Virtual Machine". К сожалению в онлайне текст это статьи найти не смог, только реквизиты. Опубликована в книге "The School of Niclaus Wirth: The Art of Simplicity".
Re[26]: Почему настоящие программисты избегают C++
Здравствуйте, Cyberax, Вы писали:
C>AVC пишет: >> Поправочка: именно Java слизана с Оберона.
C>Java ни с чего не слизана — она весьма отличается от Оберона (одно лишь C>наличие GC и системы пакетов — не признак слизанности).
Не только GC.
Я просто беру и сопоставляю конструкции Оберона и Java.
Почти один в один!
В Си++ есть объединения (union). В Обероне — нет. В Java — тоже нет.
Применение instanceof в Java — полная копия Обероновского IS.
И так с десяток заимствованных свойств, причем самых важных, существенных, деляющих Java "надежным языком".
Дома где-то пылится список "случайных совпадений".
Я когда разбирался с этим вопросом, просто взял и сопоставил конструкции языков.
И все стало ясно.
>> По поводу того, как используется Оберон, см. хотя бы презентации, >> представленные на дне Оберона в ЦЕРНе: >> http://cern.ch/oberon.day C>Больше всего посмеялся над: "*Benchmark:* Component Pascal vs C++ in a C>real-world physics problem"...
Ну что же, давайте посмеемся вместе.
Когда-то Вы уверяли, что сами видели компилятор Си++, умещающийся в 20K. Вы и сейчас будете это утверждать?
В конце 90-х по результатам тестов компилятор XDS обскакал все компиляторы Си++.
Я проверил на тех компиляторах Си++, что есть у меня. Правда.
Вы уверяете, что MSVC 8 (beta) в 12 (!) раз эффективнее, чем MSVC 6.0.
У меня пока нет этой версии, но я в это не верю. (А кто верит?)
Теперь по существу дела. Почему Оберон в ЦЕРНе. Читаем: http://www.inr.ac.ru/~info21/info/fvtjmlc2003r.htm
В лаборатории CERN [26], начиная с 1994 была сделана попытка создать стандартную платформу для программирования на основе C++ в рамках мега-проекта LHC (Large Hadron Collider — Большой Адронный Коллайдер; 2006-2020).
Нет нужды объяснять, что C++ не может обеспечить решение перечисленных выше проблем из-за критических дефектов дизайна и экстравагантной сложности. В коллективах физиков даже имели место конфликты по поводу C++, и ряд специалистов не спешит переключаться на чрезмерно сложный C++, предпочитая пока оставаться с фортраном. Фактический провал C++ иллюстрируется разработанной в CERN библиотекой ROOT для анализа и визуализации данных [18]; библиотека, написанная на C++, печально известна своей способностью генерировать фатальные ошибки.[3]
Очевидно, продуманный минимализм средств является ключевым требованием, если мы хотим, чтобы язык программирования мирно «уживался» в мозгу исследователей со всей необходимой физикой, математикой и проч. знаниями.
[3] В марте 2003 достаточно несложная прикладная программа, использующая ROOT (под управлением ОС Linux), для обработки и довольно простой визуализации данных по космическим лучам сгенерировала три ошибки типа segment violation за менее чем пять минут демонстрации. Другой пример: многоопытный и весьма уважаемый программист сменила специализацию, чтобы не иметь дела с постоянно «грохающимся» программным обеспечением, написанным на C++, работа с которым напоминает работу на больших ЭВМ советского производства в 80-х гг., когда ЕС-1060 «зависала» каждые 15-30 минут.
В общем, как пишет Метцелер,
C is a good bug generator.
Во время дискуссии об Обероне я приводил ряд "багов" прямо "с места происшествия".
С тех пор их количество возрасло.
>> Обратите внимание, например, на такие презентации >> http://ftkachov.home.cern.ch/ftkachov/talks/ftkachov.pdf >> (использование Оберона в РАН) >> http://www.amadeus-3.com/cern/background.pdf (тот самый Метцелер, в >> одиночку создавший множество программ для ряда крупнейших компаний: Du >> Pont, Deutsche Bank и т.д.)
C>Мы сейчас тоже создаем программы для Porsche и Du Pont. И что из этого?
Разница в том, что у Вас — "мы", а там человек может сказать — "я".
>> Впрочем, сколько бы я не привел аргументов, Вы их проигнорируете, так >> как, по Вашему собственному признанию, Вы — фанат Си++. C>Я скорее антифанат Pascal-подобных языков... C>Мне нравятся еще OCaml, Haskell и даже Java и C#.
Java и C# идут по стопам Оберона.
Значит ли это, что Вам просто не нравится присать BEGIN и END?
>> Вообще-то, я думал, что пустые словопрения по поводу Оберона закончились. >> Лично я перешел к практическому использованию этого языка. (DLL сейчас >> пишу именно на Обероне.) >> Жизнь продолжает подбрасывать мне примеры, что Си++ снижает надежность >> программ и производительность программистов. Но если уж Си++ *так* >> нравится, то ради Бога — дело Ваше. C>У меня примеры обратные — где всякие экзотические "надежные" языки типа C>Python'а валили проект.
А что, Python — надежный язык?
Я просто не в курсе.
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Здравствуйте, transglucator, Вы писали:
T>жена — Pascal T>проститутка — C++ T>любовница — ?
На самом деле до сих пор поддерживаю один проект на Дельфях, просто в лом переписывать, а юзеры периодически просыпаються и просят сделать им очередные приблуды. И вот каждый раз я сжимаю зубы и говорю сам себе — Леха, вспомни — begin-end, begin-end, скобки сегодня не катят
[реклама удалена модератором]
Re[27]: Почему настоящие программисты избегают C++
Здравствуйте, AVC, Вы писали:
C>>У меня примеры обратные — где всякие экзотические "надежные" языки типа C>>Python'а валили проект. AVC>А что, Python — надежный язык? AVC>Я просто не в курсе.
Имелось в виду, наверное, отсутствие адресной арифметики и наличие GC.
Здравствуйте, alnsn, Вы писали:
K_O>>The internal SRI software exception was caused during execution of a data conversion from 64-bit floating point to 16-bit signed integer value. The floating point number which was converted had a value greater than what could be represented by a 16-bit signed integer. This resulted in an Operand Error. The data conversion
A>Исключение кидается в одном месте, а ловится часто совсем в другом. А это уже пахнет взаимодействием между командами. Проблема в том, что и код ошибки и исключение легко пропустить (второе даже легче в С++) если на практике ошибка возникает редко. Вот если бы ошибку нельзя было бы не пропустить ...
Господа, о каких там ексепшенах вы говорите? Чисто логически, это какой-то 16-разрядник, вот и потребовалост это дурацкое преобразование, а еще может быть мРС, работающая под ДОС. Ну или что-то вроде того. Там же все очень консервативно, один раз сработало, так и будут ставить до следующей аварии. Все-таки эксепшены реализуются операционкой, а не языком.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Rebus83, Вы писали:
VD>>>Цссс. А то ведь флэйм получится. R>>Аааа... так это был ещё не?..
VD>Блин, мы тут Оберонциков перевоспитываем в дотнетчиков, а ты весь воспитательный процесс ломаешь.
Не надо их перевоспитывать. Слишком редко они нынче встречаются. Ещё совсем исчезнут...
... << RSDN@Home 1.1.4 beta 4 rev. 303>> Вокруг тишина
Какая странная планета! — подумал Маленький принц. — Совсем сухая,
вся в иглах и соленая. И у людей не хватает воображения. Они только
повторяют то, что им скажешь...
Re[14]: Почему настоящие программисты избегают C++
The Windows Runtime on UNIX includes an extensive set of Microsoft technologies such as MSXML, SSL, MSHTML, WinSock, COM/DCOM and ATL. These are based on the original Microsoft implementation, tuned for UNIX by Mainsoft.
Нда, за бабки можно и из Линя Вынь сделать.
... << RSDN@Home 1.1.4 beta 3 rev. 279>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: Почему настоящие программисты избегают C++
AVC пишет:
> C>Java ни с чего не слизана — она весьма отличается от Оберона (одно лишь > C>наличие GC и системы пакетов — не признак слизанности). > Не только GC. > Я просто беру и сопоставляю конструкции Оберона и Java. > Почти один в один! > В Си++ есть объединения (union). В Обероне — нет. В Java — тоже нет.
В С++ есть много того, чего нет в Java.
> Применение instanceof в Java — полная копия Обероновского IS.
Оно еще в лиспе было
> И так с десяток заимствованных свойств, причем самых важных, > существенных, деляющих Java "надежным языком". > Дома где-то пылится список "случайных совпадений". > Я когда разбирался с этим вопросом, просто взял и сопоставил > конструкции языков. > И все стало ясно.
Оберон отличается от Явы очень сильно: в Обероне нет системы интефейсов,
наследование работает слегка по-другому, конструкторы работают не так.
Явно видные мне следы Оберона: систем пакетов и GC. Но похожая система
пакетов есть и в Аде, а GC ко времени создания Явы был уже в куче языков.
> C>Больше всего посмеялся над: "*Benchmark:* Component Pascal vs C++ in a > C>real-world physics problem"... > Ну что же, давайте посмеемся вместе. > Когда-то Вы уверяли, что сами видели компилятор Си++, умещающийся в > 20K. Вы и сейчас будете это утверждать?
Такого я нигде ну утверждал. Можно ссылку на мои слова?
> В конце 90-х по результатам тестов компилятор XDS обскакал *все* > компиляторы Си++.
Из-за чего, интересно? Есть подозрение, что XDS выполнял анализ
aliasing'ов, который только недавно появился в компиляторах С++.
> В лаборатории CERN [26], начиная с 1994 была сделана попытка создать > стандартную платформу для программирования на основе C++ в рамках > мега-проекта LHC (Large Hadron Collider — Большой Адронный Коллайдер; > 2006-2020). > Нет нужды объяснять, что C++ не может обеспечить решение перечисленных > выше проблем из-за критических дефектов дизайна и экстравагантной > сложности. В коллективах физиков даже имели место конфликты по поводу > C++, и ряд специалистов не спешит переключаться на чрезмерно сложный > C++, предпочитая пока оставаться с фортраном. Фактический провал C++ > иллюстрируется разработанной в CERN библиотекой ROOT для анализа и > визуализации данных [18]; библиотека, написанная на C++, печально > известна своей способностью генерировать фатальные ошибки.[3]
Ну не смогли ученые договориться, и что? Я вот вижу перед собой
библиотеку VTK для визуализации научной графики. Замечательная вещь —
написана на С++.
> Во время дискуссии об Обероне я приводил ряд "багов" прямо "с места > происшествия". > С тех пор их количество возрасло. >>> Обратите внимание, например, на такие презентации >>> http://ftkachov.home.cern.ch/ftkachov/talks/ftkachov.pdf >>> (использование Оберона в РАН)
Я долго над ней смеялся.
>>> http://www.amadeus-3.com/cern/background.pdf (тот самый Метцелер, в >>> одиночку создавший множество программ для ряда крупнейших компаний: Du >>> Pont, Deutsche Bank и т.д.) > C>Мы сейчас тоже создаем программы для Porsche и Du Pont. И что из этого? > Разница в том, что у Вас — "мы", а там человек может сказать — "я".
_Я_ один тоже могу писать весь проект без проблем. Только времени это
займет больше.
> C>Я скорее антифанат Pascal-подобных языков... > C>Мне нравятся еще OCaml, Haskell и даже Java и C#. > Java и C# идут по стопам Оберона. > Значит ли это, что Вам просто не нравится присать BEGIN и END?
Я просто НЕ вижу в Обероне передовых идей, даже для 80-х годов. ООП в
нем недоделаный, синтаксис ужасный, а втроенная поддержка ассемблерных
вставок кажется издевательством. Мне Оберон напоминает салат, куда
намешано куча всего, но не продумано их взаимодействие. Как, например,
заPin'ить указатель при работе с ним из ассемблера?
> C>У меня примеры обратные — где всякие экзотические "надежные" языки типа > C>Python'а валили проект. > А что, Python — надежный язык? > Я просто не в курсе.
Да, так же как и Оберон. Он выполняется на виртуальной машине, в нем нет
указателей и т.п.
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re[28]: Почему настоящие программисты избегают C++
Здравствуйте, Cyberax, Вы писали:
C>AVC пишет:
>> C>Больше всего посмеялся над: "*Benchmark:* Component Pascal vs C++ in a >> C>real-world physics problem"... >> Ну что же, давайте посмеемся вместе. >> Когда-то Вы уверяли, что сами видели компилятор Си++, умещающийся в >> 20K. Вы и сейчас будете это утверждать?
C>Такого я нигде ну утверждал. Можно ссылку на мои слова?
А простой неоптимизирующий компилятор в нейтив на С++ пишется где-то
килобайт в 20 кода (сам видел).
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Хоар
Re[29]: Почему настоящие программисты избегают C++
AVC пишет:
>>> Ну что же, давайте посмеемся вместе. >>> Когда-то Вы уверяли, что сами видели компилятор Си++, умещающийся в >>> 20K. Вы и сейчас будете это утверждать? > C>Такого я нигде ну утверждал. Можно ссылку на мои слова? > Извольте: > http://www.rsdn.ru/Forum/Message.aspx?mid=994845&only=1
> Вот Ваше утверждение: > А простой неоптимизирующий компилятор в нейтив на С++ пишется где-то > килобайт в 20 кода (сам видел).
Это иллюстрация принципа "Если что-то можно понять неправильно — то это
будет понято неправильно" Я в той фразе сказал, что НА С++ можно
_написать_ компилятор в нэйтивный код, причем он будет размером килобайт
в 20 кода.
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re[24]: Почему настоящие программисты избегают C++
Здравствуйте, Кодт, Вы писали:
К>Здравствуйте, d Bratik, Вы писали:
DB>>Речь идет не об интерпретируемом байт-коде, а о промежуточном языке (Intermediate Language — IL) и динамической компиляции. Языки Lisp и Smalltalk по природе своей интерпретируемы. Сделать все это эффективно в императивном языке, на котором написать потом операционную систему удалось только Вирту и Ко.
К>Lisp может быть компилируемым. Smalltalk — тоже. К>В самом простом виде, можно оттранслировать байткод в команды реального процессора.
Я сказал "императивный", а хотел сказать "строго типизированный". Ни Lisp, ни Smalltalk строго типизироваными не являются. Для выполнения Lisp- и Smalltalk-программ по определению нужна виртуальная машина и интерпретация.
Оттранслировать байт-код в команды процессора конечно можно, но большого толка от этого не будет, ибо архитектуры виртуальных машин Lisp и Smalltalk сильно отличаются от аппаратной архитектуры современных компьютеров. Поэтому программы на Lisp и Smalltalk всегда будут сильно уступать по производительности программам, написанным на Oberon, Pascal, C/C++ и др. строго типизированных императивных языках.
Здравствуйте, d Bratik, Вы писали:
DB>Все эти "комментарии" лишний раз доказывают, что 99% всех программистов на С++ -- просто ламеры. Автор языка, кстати, попадает в эти 99%
Да ты юморист из Аншлага.
Блин спасибо тебе , было плохое настроение и голова разболелась,
прочитал некоторые твои посты и от доброго смеха всё прошло, а ведь ничего не помогало.
Тут еще в Железе один из учередителей АМД обясняет всем что такое Интел и всех несогласных кличет на рукопашную, во блин неделька.
... << RSDN@Home 1.1.4 beta 4 rev. 350>>
Re[30]: Почему настоящие программисты избегают C++
Здравствуйте, Cyberax, Вы писали:
C>AVC пишет: >>>> Ну что же, давайте посмеемся вместе. >>>> Когда-то Вы уверяли, что сами видели компилятор Си++, умещающийся в >>>> 20K. Вы и сейчас будете это утверждать? >> C>Такого я нигде ну утверждал. Можно ссылку на мои слова? >> Извольте: >> http://www.rsdn.ru/Forum/Message.aspx?mid=994845&only=1
>> Вот Ваше утверждение: >> А простой неоптимизирующий компилятор в нейтив на С++ пишется где-то >> килобайт в 20 кода (сам видел).
C>Это иллюстрация принципа "Если что-то можно понять неправильно — то это C>будет понято неправильно" Я в той фразе сказал, что НА С++ можно C>_написать_ компилятор в нэйтивный код, причем он будет размером килобайт C>в 20 кода.
Выражайтесь яснее, если хотите быть правильно понятым.
Пока что, ИМХО, Вам это не очень удается.
Вы утверждаете, что я неправильно Вас понял. (И, ясное дело, я же и виноват. Ловко, конечно. Но не слишком честно.)
А я вот вижу, что Вы просто пытаетесь выкрутиться из неловкого положения (в котором, кстати, нет ничего страшного: все мы иногда что-нибудь ляпнем не подумав; потом извиняемся), и пытаетесь все "свалить с больной головы на здоровую".
Смысл Вашей последней фразы вообще темен.
Что значит — "на C++ можно написать компилятор в неэйтивный код, причем он будет размером килобайт в 20 кода"?
Компилятор — для какого языка программирования? Для какого процессора?
Если для самого C++ и для IBM PC, то это, несомненно, шутка или вранье.
Кроме того, я что-то не пойму: можно (в принципе) написать, или Вы сами видели этот компилятор, как изначально утверждалось.
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Здравствуйте, retn, Вы писали:
R>Здравствуйте, d Bratik, Вы писали:
DB>>Все эти "комментарии" лишний раз доказывают, что 99% всех программистов на С++ -- просто ламеры. Автор языка, кстати, попадает в эти 99%
R>Да ты юморист из Аншлага.
R>Блин спасибо тебе , было плохое настроение и голова разболелась, R>прочитал некоторые твои посты и от доброго смеха всё прошло, а ведь ничего не помогало.
Это было бы смешно, если бы не было так грустно... У меня одна надежда — что MS, вылечившись сама, вылечит и других. Только вес такой фирмы может быть противопоставлен снобизму программистов на С++.
R>Тут еще в Железе один из учередителей АМД обясняет всем что такое Интел и всех несогласных кличет на рукопашную, во блин неделька.
Да, Интел процессоры проектировать не умеет. Надеюсь Бабаян их наконец уму-разуму научит.