Re[3]: Почему настоящие программисты избегают C++
От: Demiurg  
Дата: 02.03.05 07:37
Оценка:
Здравствуйте, AlexEagle, Вы писали:

C>>A Потому что реальные перцы ваяют кульный софт исключительно в универсальной среде WinHex


AE>Да ну... скажешь еще! WinHex... Фу!.. Вот Far с DOS интерфейсом — это руль (и диагноз)


Какой?
... << RSDN@Home 1.1.4 beta 4 303, 1995 — Krasnye List'ya>>
Re[4]: Почему настоящие программисты избегают C++
От: Pazak Россия  
Дата: 02.03.05 07:57
Оценка:
Здравствуйте, Demiurg, Вы писали:

AE>>Да ну... скажешь еще! WinHex... Фу!.. Вот Far с DOS интерфейсом — это руль (и диагноз)

D> Какой?

Здоров!
Ку...
Re[21]: Почему настоящие программисты избегают C++
От: Cyberax Марс  
Дата: 02.03.05 08:16
Оценка: +1
d Bratik пишет:

> C>Рисовать картинки в разных потоках, передавать обновленные картинки в

> C>GUI-тред, а в GUI-треде их показывать.
> В Qt рисование (любое, даже картинки) в потоке небезопасно, если в это
> время выполняется цикл обработки сообщений

Сам-то понял что сказал? Рисовать из обработчика событий — абсолютно
безопасно, так как они работают в GUI-потоке.

А вот рисовать в соседнем потоке на окно в текущем потоке — нельзя
(точнее можно, но будут глюки). Поэтому графические вызовы нужно
перенаправлять в GUI-поток. В простейшем случае это делается так
(псевдокод):
shared_ptr<Image> curImage;
Window window;

void slowPictureRenderer()
{
    while(true)
    {
        shared_ptr<Image> img=new Image();
        //Draw cycle
        curImage=img;
        SendMessage(window,ON_UPDATE_WINDOW);
    }
}

void Window::UpdateWindow()
{
    //Render curImage
}

Естественно, нужно все сделать потокобезопасным и реентерабельным, да и
покрасивее все реализовать. Оставляю в качестве упражнения читателю.

> C>Кстати, рисование средствами какой библиотеки производится?

> X11. Она не многопоточна

Она не _потокобезопасна_, но вполне многопоточна.

> C>Вот Вирта в этом списке нет, так как я не помню хороших его

> практических
> C>творений: Pascal годен только для обучения, Oberon не входит даже в
> C>сотню самых распространенных языков, а Дельфи делалась и вовсе без
> Вирта
> C>(наверное поэтому и получилось сравнительно удачной). Я не спорю, что
> C>Вирт сделал много для развития теории (как и Дональд Кнут), но вот для
> C>практики....
> Это невежество простительно лишь для студента первого курса. Вирт
> системы делал, а языки Pascal, Modula, Oberon — лишь побочный продукт
> его деятельности.

КАКИЕ системы? Ссылки, пожалуйста.

> Именно Виртом и его командой были придуманы


ЧЕГО? Все это придумал Вирт???

Стыдно доктору проявлять такую безграмотность.

The first complete Lisp compiler, written in Lisp, was implemented in
1962 <http://en.wikipedia.org/wiki/1962&gt; by Tim Hart and Mike Levin. (AI
Memo 39
<ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-039.pdf&gt; (/ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-039.pdf/),
767 kB PDF) This compiler introduced the Lisp model of incremental
compilation, in which compiled and interpreted functions can intermix
freely. The language used in Hart and Levin's memo is much closer to
modern Lisp style than McCarthy's earlier code.


А теперь это надо сравнить с датой изобретения Oberon'а (поздние 80-е)...

> реализованы (в операционной системе Oberon) все самые лучшие

> технические идеи, которые спустя несколько десятилетий были внедрены в
> .NET: высокоуровневый байт-код

Было в Smalltalk'е и Лиспе еще в 70-х годах

> динамическая компиляция


Smalltalk, Lisp, Basic

> автоматическая сборка мусора


Lisp — в 62 году.

> контроль типов во время выполнения программы


Lisp — в 62 году.

> полная информация о типах в исполняемых модулях, расширяемость

> программ без их перекомпиляции и многое другое.

А тут со Smalltalk'ом вообще ничего не сравнится.

> Вирт собственноручно проектировал язык, программировал компилятор,

> операционную систему, графическую библиотеку визуальных компонентов и
> др. Проблема Вирта лишь в том, что он слишком сильно (на 20-30 лет)
> опередил свое время.

Скорее он отстал лет на 10-15. Появись его творения в начале 70-х —
тогда может быть и были бы популярны. А в 80-х годах они уже не были ни
новыми, ни особо привлекательными.

> Кернигана и Ритчи — неплохие ребята, но до Вирта им как до луны. Да,

> они тоже делали язык, компилятор и операционную систему, поэтому их
> есть за что уважать (хотя все их творения уже давно морально устарели).

Ага, поэтому на их языке сейчас пишется больше всего системного софта, а
их операционка определила одну из двух популярных сейчас архитектур ОС.

> Страуструп вообще ничего практического не сделал.


Всего-то, изобрел С++....

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re[4]: Почему настоящие программисты избегают C++
От: AlexEagle Украина http://www.vik.oil
Дата: 02.03.05 09:28
Оценка:
Здравствуйте, Demiurg, Вы писали:

AE>>Да ну... скажешь еще! WinHex... Фу!.. Вот Far с DOS интерфейсом — это руль (и диагноз)


D> Какой?


Ну как же — Р Е А Л Ь Н Ы Й П Е Р Е Ц!
Re[5]: Почему настоящие программисты избегают C++
От: Demiurg  
Дата: 02.03.05 10:02
Оценка:
Здравствуйте, AlexEagle, Вы писали:

AE>>>Да ну... скажешь еще! WinHex... Фу!.. Вот Far с DOS интерфейсом — это руль (и диагноз)


D>> Какой?


AE>Ну как же — Р Е А Л Ь Н Ы Й П Е Р Е Ц!


А в чем заключается реальность перца, который пользуется ФАРом с "дос-интерфейсом"? Тем, что пользуется консольным интерейсом? Есть такая программка — QView, по-моему так она называется... Так вот это консольный (а вернее полноценный dos16 ) hex-редактор, который для меня гораздо круче чем всякие там WinHex'ы...
Так что я реальный перец!!!
... << RSDN@Home 1.1.4 beta 4 303, Ария — 2-Раскачаем этот мир>>
Re[5]: Почему настоящие программисты избегают C++
От: Кодт Россия  
Дата: 02.03.05 11:33
Оценка:
Здравствуйте, AlexEagle, Вы писали:

AE>Ну как же — Р Е А Л Ь Н Ы Й П Е Р Е Ц!


В смысле — x86 real mode перец?
Перекуём баги на фичи!
Re[6]: Почему настоящие программисты избегают C++
От: AlexEagle Украина http://www.vik.oil
Дата: 02.03.05 13:12
Оценка:
Здравствуйте, Кодт, Вы писали:

AE>>Ну как же — Р Е А Л Ь Н Ы Й П Е Р Е Ц!


К>В смысле — x86 real mode перец?


а то!
Re[6]: Почему настоящие программисты избегают C++
От: AlexEagle Украина http://www.vik.oil
Дата: 02.03.05 13:16
Оценка:
Здравствуйте, Demiurg, Вы писали:

D> А в чем заключается реальность перца, который пользуется ФАРом с "дос-интерфейсом"? Тем, что пользуется консольным интерейсом? Есть такая программка — QView, по-моему так она называется... Так вот это консольный (а вернее полноценный dos16 ) hex-редактор, который для меня гораздо круче чем всякие там WinHex'ы...

D> Так что я реальный перец!!!

Ты не реальный перец!!! Не льсти себе! Вот когда станешь программы ПИСАТЬ а не править в hex редакторе — тогда будешь перцем. Причем x86 real mode перцем
Re[7]: Почему настоящие программисты избегают C++
От: Demiurg  
Дата: 02.03.05 13:22
Оценка:
Здравствуйте, AlexEagle, Вы писали:

D>> А в чем заключается реальность перца, который пользуется ФАРом с "дос-интерфейсом"? Тем, что пользуется консольным интерейсом? Есть такая программка — QView, по-моему так она называется... Так вот это консольный (а вернее полноценный dos16 ) hex-редактор, который для меня гораздо круче чем всякие там WinHex'ы...

D>> Так что я реальный перец!!!

AE>Ты не реальный перец!!! Не льсти себе! Вот когда станешь программы ПИСАТЬ а не править в hex редакторе — тогда будешь перцем. Причем x86 real mode перцем


Сказано реальный — значит реальный! Мне лучше знать
... << RSDN@Home 1.1.4 beta 4 303, Раскачаем этот мир>>
Re[8]: Почему настоящие программисты избегают C++
От: AlexEagle Украина http://www.vik.oil
Дата: 02.03.05 13:25
Оценка:
Здравствуйте, Demiurg, Вы писали:

D> Сказано реальный — значит реальный! Мне лучше знать


Аргументы извольте батенька, а то все реальными станут!!!
Re[9]: Почему настоящие программисты избегают C++
От: Demiurg  
Дата: 02.03.05 13:32
Оценка:
Здравствуйте, AlexEagle, Вы писали:

D>> Сказано реальный — значит реальный! Мне лучше знать


AE>Аргументы извольте батенька, а то все реальными станут!!!


Не, вы все виртуальны, я вас через только янус и аську вижу. Для меня только я реален по-настоящему
... << RSDN@Home 1.1.4 beta 4 303, ARIA — Закат>>
Re[22]: Почему настоящие программисты избегают C++
От: d Bratik  
Дата: 03.03.05 13:58
Оценка:
Здравствуйте, 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. Об учениках Страуструпа такого не скажешь (их вообще никогда не было).
Re[3]: Почему настоящие программисты избегают C++
От: _Obelisk_ Россия http://www.ibm.com
Дата: 03.03.05 14:09
Оценка:
Здравствуйте, AlexEagle, Вы писали:

AE>Здравствуйте, Chez, Вы писали:


C>>A Потому что реальные перцы ваяют кульный софт исключительно в универсальной среде WinHex


AE>Да ну... скажешь еще! WinHex... Фу!.. Вот Far с DOS интерфейсом — это руль (и диагноз)


Не, никаких Фаров. Только

copy con: MyCoolProg.exe



Душа обязана трудиться! (с) Н.Заболоцкий.
Re[23]: Почему настоящие программисты избегают C++
От: Кодт Россия  
Дата: 03.03.05 14:19
Оценка:
Здравствуйте, d Bratik, Вы писали:

DB>Речь идет не об интерпретируемом байт-коде, а о промежуточном языке (Intermediate Language — IL) и динамической компиляции. Языки Lisp и Smalltalk по природе своей интерпретируемы. Сделать все это эффективно в императивном языке, на котором написать потом операционную систему удалось только Вирту и Ко.


Lisp может быть компилируемым. Smalltalk — тоже.
В самом простом виде, можно оттранслировать байткод в команды реального процессора.
Перекуём баги на фичи!
Re[23]: Почему настоящие программисты избегают C++
От: Cyberax Марс  
Дата: 03.03.05 14:22
Оценка:
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) ....

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re[4]: Почему настоящие программисты избегают C++
От: AlexEagle Украина http://www.vik.oil
Дата: 03.03.05 14:26
Оценка:
Здравствуйте, _Obelisk_, Вы писали:

_O_>Не, никаких Фаров. Только


_O_>
_O_>copy con: MyCoolProg.exe
_O_>


Про это я как-то не подумал Это уже диагнох реального перца в квадрате
Re[24]: Почему настоящие программисты избегают C++
От: AVC Россия  
Дата: 03.03.05 14:55
Оценка:
Здравствуйте, 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++
От: Pazak Россия  
Дата: 03.03.05 15:01
Оценка:
Здравствуйте, d Bratik, Вы писали:

DB>Речь идет не об интерпретируемом байт-коде, а о промежуточном языке (Intermediate Language — IL) и динамической компиляции. Языки Lisp и Smalltalk по природе своей интерпретируемы. Сделать все это эффективно в императивном языке, на котором написать потом операционную систему удалось только Вирту и Ко.


Может потому, что остальным это просто на фиг не нужно было? Или 100% программистов начала 80-х были идиотами, раз не использовали "наиболее эффективную" технологию?

P>>Угу, вот только "морально устаревшие творения K&R+S" продолжают успешно применяться, а Виртовские "опредившие время" системы так и остались по большому счету на уровне "интересных для изучения". А разговор-то идет о практике.

DB>Вот именно, разговор о практике, а не о популярности.

Это и есть применение на практике.

P>>Ты вот, например, сейчас под какой осью эту мессагу читаешь? Под Oberon-based или все-таки под написанными на С[++] виндами/линухом?

DB>Ну и какое это имеет отношение к практическому программированию Страуструпа?

Такое, что одно дело — написать и поддерживать институтскую экспериментальную поделку (имея при этом гарантированный профессорский оклад и роту студентов в подчинении), и несколько другое — делать то же самое в рамках реального коммерческого проекта, где на доведение софта до идеала никто денег не выделит. После того, как c++ "пошел в массы" Страуструп потерял над ним влияние и, соответственно, ушел от самостоятельной его доработки в сторону консультаций и советов. Получи 20 лет назат такую же популярность оберон — глядишь на месте Бьярна мы бы увидели старину Вирта.
Ку...
Re[25]: Почему настоящие программисты избегают C++
От: Cyberax Марс  
Дата: 03.03.05 15:14
Оценка:
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++
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 03.03.05 15:27
Оценка:
Здравствуйте, Cyberax, Вы писали:



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>>
и солнце б утром не вставало, когда бы не было меня
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.