Здравствуйте, AlexEagle, Вы писали:
C>>A Потому что реальные перцы ваяют кульный софт исключительно в универсальной среде WinHex
AE>Да ну... скажешь еще! WinHex... Фу!.. Вот Far с DOS интерфейсом — это руль (и диагноз)
d Bratik пишет:
> C>Рисовать картинки в разных потоках, передавать обновленные картинки в > C>GUI-тред, а в GUI-треде их показывать. > В Qt рисование (любое, даже картинки) в потоке небезопасно, если в это > время выполняется цикл обработки сообщений
Сам-то понял что сказал? Рисовать из обработчика событий — абсолютно
безопасно, так как они работают в GUI-потоке.
А вот рисовать в соседнем потоке на окно в текущем потоке — нельзя
(точнее можно, но будут глюки). Поэтому графические вызовы нужно
перенаправлять в GUI-поток. В простейшем случае это делается так
(псевдокод):
Естественно, нужно все сделать потокобезопасным и реентерабельным, да и
покрасивее все реализовать. Оставляю в качестве упражнения читателю.
> C>Кстати, рисование средствами какой библиотеки производится? > X11. Она не многопоточна
Она не _потокобезопасна_, но вполне многопоточна.
> C>Вот Вирта в этом списке нет, так как я не помню хороших его > практических > C>творений: Pascal годен только для обучения, Oberon не входит даже в > C>сотню самых распространенных языков, а Дельфи делалась и вовсе без > Вирта > C>(наверное поэтому и получилось сравнительно удачной). Я не спорю, что > C>Вирт сделал много для развития теории (как и Дональд Кнут), но вот для > C>практики.... > Это невежество простительно лишь для студента первого курса. Вирт > системы делал, а языки Pascal, Modula, Oberon — лишь побочный продукт > его деятельности.
КАКИЕ системы? Ссылки, пожалуйста.
> Именно Виртом и его командой были придуманы
А теперь это надо сравнить с датой изобретения Oberon'а (поздние 80-е)...
> реализованы (в операционной системе Oberon) все самые лучшие > технические идеи, которые спустя несколько десятилетий были внедрены в > .NET: высокоуровневый байт-код
Было в Smalltalk'е и Лиспе еще в 70-х годах
> динамическая компиляция
Lisp — в 62 году.
> контроль типов во время выполнения программы
Lisp — в 62 году.
> полная информация о типах в исполняемых модулях, расширяемость > программ без их перекомпиляции и многое другое.
А тут со Smalltalk'ом вообще ничего не сравнится.
> Вирт собственноручно проектировал язык, программировал компилятор, > операционную систему, графическую библиотеку визуальных компонентов и > др. Проблема Вирта лишь в том, что он слишком сильно (на 20-30 лет) > опередил свое время.
Скорее он отстал лет на 10-15. Появись его творения в начале 70-х —
тогда может быть и были бы популярны. А в 80-х годах они уже не были ни
новыми, ни особо привлекательными.
> Кернигана и Ритчи — неплохие ребята, но до Вирта им как до луны. Да, > они тоже делали язык, компилятор и операционную систему, поэтому их > есть за что уважать (хотя все их творения уже давно морально устарели).
Ага, поэтому на их языке сейчас пишется больше всего системного софта, а
их операционка определила одну из двух популярных сейчас архитектур ОС.
> Страуструп вообще ничего практического не сделал.
Здравствуйте, AlexEagle, Вы писали:
AE>>>Да ну... скажешь еще! WinHex... Фу!.. Вот Far с DOS интерфейсом — это руль (и диагноз)
D>> Какой?
AE>Ну как же — Р Е А Л Ь Н Ы Й П Е Р Е Ц!
А в чем заключается реальность перца, который пользуется ФАРом с "дос-интерфейсом"? Тем, что пользуется консольным интерейсом? Есть такая программка — QView, по-моему так она называется... Так вот это консольный (а вернее полноценный dos16 ) hex-редактор, который для меня гораздо круче чем всякие там WinHex'ы...
Так что я реальный перец!!!
Здравствуйте, Demiurg, Вы писали:
D> А в чем заключается реальность перца, который пользуется ФАРом с "дос-интерфейсом"? Тем, что пользуется консольным интерейсом? Есть такая программка — QView, по-моему так она называется... Так вот это консольный (а вернее полноценный dos16 ) hex-редактор, который для меня гораздо круче чем всякие там WinHex'ы... D> Так что я реальный перец!!!
Ты не реальный перец!!! Не льсти себе! Вот когда станешь программы ПИСАТЬ а не править в hex редакторе — тогда будешь перцем. Причем x86 real mode перцем
Здравствуйте, AlexEagle, Вы писали:
D>> А в чем заключается реальность перца, который пользуется ФАРом с "дос-интерфейсом"? Тем, что пользуется консольным интерейсом? Есть такая программка — QView, по-моему так она называется... Так вот это консольный (а вернее полноценный dos16 ) hex-редактор, который для меня гораздо круче чем всякие там WinHex'ы... D>> Так что я реальный перец!!!
AE>Ты не реальный перец!!! Не льсти себе! Вот когда станешь программы ПИСАТЬ а не править в hex редакторе — тогда будешь перцем. Причем x86 real mode перцем
Сказано реальный — значит реальный! Мне лучше знать
... << RSDN@Home 1.1.4 beta 4 303, Раскачаем этот мир>>
Здравствуйте, AlexEagle, Вы писали:
D>> Сказано реальный — значит реальный! Мне лучше знать
AE>Аргументы извольте батенька, а то все реальными станут!!!
Не, вы все виртуальны, я вас через только янус и аську вижу. Для меня только я реален по-настоящему
... << RSDN@Home 1.1.4 beta 4 303, ARIA — Закат>>
Re[22]: Почему настоящие программисты избегают C++
Здравствуйте, Pazak, Вы писали:
P>Здравствуйте, d Bratik, Вы писали:
DB>>Именно Виртом и его командой были придуманы и реализованы (в операционной системе Oberon) все самые лучшие технические идеи, которые спустя несколько десятилетий были внедрены в .NET:
P>Знающие люди поправят, но ИМХО...
DB>>высокоуровневый байт-код,
P>...был в smalltalk...
DB>>динамическая компиляция,
P>...была в smalltalk...
DB>>автоматическая сборка мусора,
P>...вроде тоже была.
Речь идет не об интерпретируемом байт-коде, а о промежуточном языке (Intermediate Language — IL) и динамической компиляции. Языки Lisp и Smalltalk по природе своей интерпретируемы. Сделать все это эффективно в императивном языке, на котором написать потом операционную систему удалось только Вирту и Ко.
DB>>Вирт собственноручно проектировал язык, программировал компилятор, операционную систему, графическую библиотеку визуальных компонентов и др. Проблема Вирта лишь в том, что он слишком сильно (на 20-30 лет) опередил свое время. DB>>Кернигана и Ритчи — неплохие ребята, но до Вирта им как до луны. Да, они тоже делали язык, компилятор и операционную систему, поэтому их есть за что уважать (хотя все их творения уже давно морально устарели). DB>>Страуструп вообще ничего практического не сделал.
P>Угу, вот только "морально устаревшие творения K&R+S" продолжают успешно применяться, а Виртовские "опредившие время" системы так и остались по большому счету на уровне "интересных для изучения". А разговор-то идет о практике.
Вот именно, разговор о практике, а не о популярности.
P>Ты вот, например, сейчас под какой осью эту мессагу читаешь? Под Oberon-based или все-таки под написанными на С[++] виндами/линухом?
Ну и какое это имеет отношение к практическому программированию Страуструпа?
Кстати, Вы вот в Интернет на форумы ходите, а поди даже не знаете, что телефонные станции и спутники связи, через которые Ваш трафик идет, на Модуле-2 работают. И когда на самолете летите, не знает, что авионика тоже на Модуле-2 работает.
Что касается Oberon, то это был экспериментальный проект, на котором были откатаны идеи и который позволил потом сделать .NET. Не даром же все лучшие ученики Вирта давно наняты или спонсируются MS. Об учениках Страуструпа такого не скажешь (их вообще никогда не было).
Здравствуйте, AlexEagle, Вы писали:
AE>Здравствуйте, Chez, Вы писали:
C>>A Потому что реальные перцы ваяют кульный софт исключительно в универсальной среде WinHex
AE>Да ну... скажешь еще! WinHex... Фу!.. Вот Far с DOS интерфейсом — это руль (и диагноз)
Не, никаких Фаров. Только
copy con: MyCoolProg.exe
Душа обязана трудиться! (с) Н.Заболоцкий.
Re[23]: Почему настоящие программисты избегают C++
Здравствуйте, d Bratik, Вы писали:
DB>Речь идет не об интерпретируемом байт-коде, а о промежуточном языке (Intermediate Language — IL) и динамической компиляции. Языки Lisp и Smalltalk по природе своей интерпретируемы. Сделать все это эффективно в императивном языке, на котором написать потом операционную систему удалось только Вирту и Ко.
Lisp может быть компилируемым. Smalltalk — тоже.
В самом простом виде, можно оттранслировать байткод в команды реального процессора.
Перекуём баги на фичи!
Re[23]: Почему настоящие программисты избегают C++
d Bratik пишет:
> Речь идет не об интерпретируемом байт-коде, а о промежуточном языке > (Intermediate Language — IL) и динамической компиляции.
Открою страшную тайну: байт код он не интерпретируемый, а комплириуемый!
Причем динамически. Причем первые исследования на тему IL и
JIT-компиляции появлились еще в 50-х годах, а первые реализации
JIT-компиляторов были в 60-х.
> Языки Lisp и Smalltalk по природе своей интерпретируемы. Сделать все > это эффективно в императивном языке, на котором написать потом > операционную систему удалось только Вирту и Ко.
Не надо свое невежество выставлять напоказ.... Интепретируемость и
императивность никак не связаны друг с другом, а Лисп-код может быть
вполне нормально JIT-скомпилирован.
> P>Угу, вот только "морально устаревшие творения K&R+S" продолжают > успешно применяться, а Виртовские "опредившие время" системы так и > остались по большому счету на уровне "интересных для изучения". А > разговор-то идет о практике. > Вот именно, разговор о практике, а не о популярности.
Так что у Вирта практичного-то? А?
> P>Ты вот, например, сейчас под какой осью эту мессагу читаешь? Под > Oberon-based или все-таки под написанными на С[++] виндами/линухом? > Ну и какое это имеет отношение к практическому программированию > Страуструпа?
Такое, что язык, созданный им, используется в написании этих средств.
> Кстати, Вы вот в Интернет на форумы ходите, а поди даже не знаете, что > телефонные станции и спутники связи, через которые Ваш трафик идет, на > Модуле-2 работают. И когда на самолете летите, не знает, что авионика > тоже на Модуле-2 работает.
ССЫЛКИ, ССЫЛКИ, ССЫЛКИ, ССЫЛКИ! Где? Вот уж не верю я, что на
коммерческих спутниках связи используется Модула-2. Знаю, что
используется Ада и С, про Модулу-2 не слышал.
> Что касается Oberon, то это был экспериментальный проект, на котором > были откатаны идеи и который позволил потом сделать .NET. Не даром же > все лучшие ученики Вирта давно наняты или спонсируются MS. Об учениках > Страуструпа такого не скажешь (их вообще никогда не было).
Имена, фамилии, явки учеников Вирта, создавших .NET (точнее слизавших ее
архитектуру с Java) ....
Здравствуйте, Cyberax, Вы писали:
>> Что касается Oberon, то это был экспериментальный проект, на котором >> были откатаны идеи и который позволил потом сделать .NET. Не даром же >> все лучшие ученики Вирта давно наняты или спонсируются MS. Об учениках >> Страуструпа такого не скажешь (их вообще никогда не было). C>Имена, фамилии, явки учеников Вирта, создавших .NET (точнее слизавших ее C>архитектуру с Java) ....
Например, Шиперски (Szipersky) — один из основателей Oberon Microsystems.
Поправочка: именно Java слизана с Оберона.
По поводу того, как используется Оберон, см. хотя бы презентации, представленные на дне Оберона в ЦЕРНе: http://cern.ch/oberon.day
Обратите внимание, например, на такие презентации http://ftkachov.home.cern.ch/ftkachov/talks/ftkachov.pdf (использование Оберона в РАН) http://www.amadeus-3.com/cern/background.pdf (тот самый Метцелер, в одиночку создавший множество программ для ряда крупнейших компаний: Du Pont, Deutsche Bank и т.д.)
Впрочем, сколько бы я не привел аргументов, Вы их проигнорируете, так как, по Вашему собственному признанию, Вы — фанат Си++.
Вообще-то, я думал, что пустые словопрения по поводу Оберона закончились.
Лично я перешел к практическому использованию этого языка. (DLL сейчас пишу именно на Обероне.)
Жизнь продолжает подбрасывать мне примеры, что Си++ снижает надежность программ и производительность программистов. Но если уж Си++ так нравится, то ради Бога — дело Ваше.
Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.
Хоар
Re[23]: Почему настоящие программисты избегают C++
Здравствуйте, d Bratik, Вы писали:
DB>Речь идет не об интерпретируемом байт-коде, а о промежуточном языке (Intermediate Language — IL) и динамической компиляции. Языки Lisp и Smalltalk по природе своей интерпретируемы. Сделать все это эффективно в императивном языке, на котором написать потом операционную систему удалось только Вирту и Ко.
Может потому, что остальным это просто на фиг не нужно было? Или 100% программистов начала 80-х были идиотами, раз не использовали "наиболее эффективную" технологию?
P>>Угу, вот только "морально устаревшие творения K&R+S" продолжают успешно применяться, а Виртовские "опредившие время" системы так и остались по большому счету на уровне "интересных для изучения". А разговор-то идет о практике. DB>Вот именно, разговор о практике, а не о популярности.
Это и есть применение на практике.
P>>Ты вот, например, сейчас под какой осью эту мессагу читаешь? Под Oberon-based или все-таки под написанными на С[++] виндами/линухом? DB>Ну и какое это имеет отношение к практическому программированию Страуструпа?
Такое, что одно дело — написать и поддерживать институтскую экспериментальную поделку (имея при этом гарантированный профессорский оклад и роту студентов в подчинении), и несколько другое — делать то же самое в рамках реального коммерческого проекта, где на доведение софта до идеала никто денег не выделит. После того, как c++ "пошел в массы" Страуструп потерял над ним влияние и, соответственно, ушел от самостоятельной его доработки в сторону консультаций и советов. Получи 20 лет назат такую же популярность оберон — глядишь на месте Бьярна мы бы увидели старину Вирта.
Ку...
Re[25]: Почему настоящие программисты избегают C++
AVC пишет:
> C>Имена, фамилии, явки учеников Вирта, создавших .NET (точнее > слизавших ее > C>архитектуру с Java) .... > Например, Шиперски (Szipersky) — один из основателей Oberon Microsystems.
И? Гугл выдает на нее 10000 ссылок, и даже сайта на английском у них нет.
> Поправочка: именно Java слизана с Оберона.
Java ни с чего не слизана — она весьма отличается от Оберона (одно лишь
наличие GC и системы пакетов — не признак слизанности).
> По поводу того, как используется Оберон, см. хотя бы презентации, > представленные на дне Оберона в ЦЕРНе: > http://cern.ch/oberon.day
Больше всего посмеялся над: "*Benchmark:* Component Pascal vs C++ in a
real-world physics problem"...
> Обратите внимание, например, на такие презентации > http://ftkachov.home.cern.ch/ftkachov/talks/ftkachov.pdf > (использование Оберона в РАН) > http://www.amadeus-3.com/cern/background.pdf (тот самый Метцелер, в > одиночку создавший множество программ для ряда крупнейших компаний: Du > Pont, Deutsche Bank и т.д.)
Мы сейчас тоже создаем программы для Porsche и Du Pont. И что из этого?
> Впрочем, сколько бы я не привел аргументов, Вы их проигнорируете, так > как, по Вашему собственному признанию, Вы — фанат Си++.
Я скорее антифанат Pascal-подобных языков...
Мне нравятся еще OCaml, Haskell и даже Java и C#.
> Вообще-то, я думал, что пустые словопрения по поводу Оберона закончились. > Лично я перешел к практическому использованию этого языка. (DLL сейчас > пишу именно на Обероне.) > Жизнь продолжает подбрасывать мне примеры, что Си++ снижает надежность > программ и производительность программистов. Но если уж Си++ *так* > нравится, то ради Бога — дело Ваше.
У меня примеры обратные — где всякие экзотические "надежные" языки типа
Python'а валили проект.
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re[26]: Почему настоящие программисты избегают C++
C>Java ни с чего не слизана — она весьма отличается от Оберона (одно лишь C>наличие GC и системы пакетов — не признак слизанности).
GC + JIT это основа манагед сред. Все остальное это сахар.
C>Я скорее антифанат Pascal-подобных языков...
C>Мне нравятся еще OCaml, Haskell и даже Java и C#.
И чем они тебе не угодили. С# и Delphi (не смотря на единого создателя) больше похожи друг на друга, чем на С/С++.
При этом миграция на Net у Delphi прошла очень гладко.
Все таки Виртовская концепции больше претворились в манагед средах (Оберон одна из них)
... << RSDN@Home 1.1.4 beta 4 rev. 303>>
и солнце б утром не вставало, когда бы не было меня