Re[5]: BlackBox всерьёз
От: Petrovv  
Дата: 18.11.05 14:52
Оценка: 15 (1) :)))
Здравствуйте, Сергей Губанов.

Вам, Сергей можно писать книги по программированию.
Думаю талант у Вас к этому есть.
Re[6]: BlackBox всерьёз
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 18.11.05 15:08
Оценка:
Здравствуйте, Petrovv, Вы писали:

P>Вам, Сергей можно писать книги по программированию.

P>Думаю талант у Вас к этому есть.

Спасибо, если не шутите.
Re[6]: BlackBox всерьёз
От: Nickolay Ch  
Дата: 18.11.05 17:12
Оценка: :)
Здравствуйте, Petrovv, Вы писали:

P>Здравствуйте, Сергей Губанов.


P>Вам, Сергей можно писать книги по программированию.

P>Думаю талант у Вас к этому есть.

И преподавать программирование в вузе.
Re[6]: BlackBox всерьёз
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 18.11.05 17:17
Оценка:
Здравствуйте, Petrovv, Вы писали:

P>Вам, Сергей можно писать книги по программированию.


По программированию на Оберон?
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[7]: BlackBox всерьёз
От: Nickolay Ch  
Дата: 19.11.05 08:35
Оценка: 42 (2) :))) :)
Здравствуйте, eao197, Вы писали:

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


P>>Вам, Сергей можно писать книги по программированию.


E>По программированию на Оберон?


По теории правильного программирования на примере идеального языка Оберон.
Re[5]: BlackBox всерьёз
От: Nickolay Ch  
Дата: 19.11.05 08:37
Оценка:
СГ>0) У меня есть сонмище претензий к Си-образному синтаксиссу, инструкции goto, break, continue и т.п.; дополнительно к Exceptions и много чему еще, но думаю, Вы вовсе не об этом хотели бы тут сейчас услышать.

А вот очень бы хотелось услышать, что вы предлагаете на замену эксепшенов, только мб в новой теме. Они много чем не нравятся, но пока не видно лучших механизмов обработки ошибок.
Re[8]: BlackBox всерьёз
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 19.11.05 09:13
Оценка:
Здравствуйте, Nickolay Ch, Вы писали:

P>>>Вам, Сергей можно писать книги по программированию.


E>>По программированию на Оберон?


NC>По теории правильного программирования на примере идеального языка Оберон.


Не написав ни одного реального проекта на Оберон?

А фраза "теория правильного программирования" -- это вообще супер! Нужно будет заполнить. Почти как "теория правильного обольщения".
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[4]: И еще Лиспа :)
От: Mamut Швеция http://dmitriid.com
Дата: 20.11.05 12:33
Оценка:
Из "Loving Lisp, or the Savvy Programmer's Secret Weapon":

I have written six books on Java, and I have been quoted as saying that for me,
programming in Java is about twice as efficient
(in terms of my time) than programming
in C++
. I base this statement on approximately ten years of C++ experience on projects
for SAIC, PacBell, Angel Studios, Nintendo, and Disney. I find Common Lisp to be
about twice as efficient
(again, in terms of my time) than Java.




dmitriid.comGitHubLinkedIn
Re[9]: BlackBox всерьёз
От: Sinclair Россия https://github.com/evilguest/
Дата: 21.11.05 06:35
Оценка: 1 (1) +1 :))
Здравствуйте, eao197, Вы писали:
E>А фраза "теория правильного программирования" -- это вообще супер! Нужно будет заполнить. Почти как "теория правильного обольщения".
Она же "теория кристалла". Используется только в аббревиатуре СТЗТК — "с точки зрения теории кристалла". Как правило, следующая фраза начинается с "К сожалению, на практике ...". Примерно так:

СТЗТК порядок операторов в программе на языке высокого уровня не должен влиять на эффективность конечной программы. К сожалению, на практике многие реализации компиляторов не выполняют простейших оптимизаций, занимаясь скорее буквальным экспортом AST в целевой код — например, компилятор языка Оберон".

1.1.4 stable rev. 510
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[10]: BlackBox всерьёз
От: Codechanger Россия  
Дата: 21.11.05 15:35
Оценка:
Эххх... отпишусь и я... работал в оборонке. С++ в основном.
Re[2]: BlackBox всерьёз
От: AVC Россия  
Дата: 26.11.05 23:27
Оценка: 93 (5)
Здравствуйте, eao197, Вы писали:

Здравствуй, Евгений!

Зашел сюда по данной тобой ссылке, чтобы ответить на вопрос.

E>А у меня вопрос ко всем сторонникам и любителям Oberon-а, обретающимся в данном форуме. Не могли бы вы чуть-чуть рассказать о проектах, которые вы делаете на Oberon-е? Ну хотя бы в общих чертах: область применения, объем, количество людей на проекте и т.д. и т.п. (так, чтобы и впечатление можно было составить и секретов не раскрывать).


E>А то здесь есть масса народу, которые пишут на C++. Есть те, кто пишут на C#. Есть Java-программисты. Есть приверженцы Python, Erlang, Ruby и Smalltalk. Причем для последних из перечисленных языков даже понятно, что и что пишет . А вот что делается на Oberon?


Насколько я понимаю вопрос, тебя интересует,не то, что вообще где-то в мире делается на Обероне, а что я лично пишу на Обероне.
В этом вопросе есть пара "подводных камней", которые хорошо было бы "указать на карте".
1) До последнего времени Оберон был практически неизвестен в нашей стране.
Лично я об Обероне знаю всего три года.
2) Отсюда прямо вытекает, что инструментарий для работы на Обероне (компиляторы и т.д.) также был недоступен.
Когда я узнал об Обероне и решил, что он заслуживает внимания, я послал просьбу в Oberon Microsystems разрешить мне пользоваться их компилятором бесплатно.
Через некоторое время я получил разрешение на некоммерческое использование.
Думаю, тебе понятно, что это означало в моих условиях. У меня семья 5 человек, а "добытчик" я один.
Поэтому я писал программки (в основном, расчет и моделирование) для себя на Обероне (конкретно — Компонентном Паскале), а "деньги делал" на Си/Си++.
Около года назад произошли некоторые изменения: BlackBox и компилятор XDS (Модула-2/Оберон-2) стали свободно доступными.
Это несколько изменило ситуацию, и я стал подумывать и о "производственном", и о "коммерческом" применении Оберона.
Но при этом я был "по уши" в текущих проектах на Си/Си++.
Сначала на Обероне были написаны некоторые DLL на работе, хотя используются они из существующих Си++ программ.
Затем к лету я ввязался в один проект, который к тому времени никак не могли завершить на C++ .NET. В проекте наблюдались все прелести Си++ (утечки памяти, непредсказуемый crash и т.д.), поэтому я предполагал переписать его полностью на Обероне. Но студенты (мои помощники) очень хотели довести до ума существующий проект на Си++. Будучи в душе демократом, я (конечно, "скрипя сердцем" ), согласился, хотя до сих пор думаю, что это было неверным шагом.
Как бы то ни было, "мои" студенты сумели (в основном) справиться с существующими дефектами, за что я их очень даже "зауважал".
На Компонентном Паскале были реализованы только те части проекта, где раньше "конь не валялся": связанные с OLE и COM. Здесь мне очень помог "блэкбоксовский" Direct-to-COM compiler, ведь я не слишком большой знаток OLE-шных интерфейсов. В последнее время все больше "по голому железу" писал.
В настоящее время пишу на Компонентном Паскале программу, моделирующую поведение аппаратуры. Теперь уже на основной работе, и уже не "вспомогательную" DLL.
Как видишь, не слишком густо, но это в силу определенных обстоятельств.
(Поэтому, ИМХО, зря ты раскритиковал Сергея Губанова за то, что он мало пишет на Обероне. У него те же обстоятельства, что и у меня. А "некоммерческого" ПО на Компонентном Паскале он написал приличное количество. Видел его подсистему Мастер и т.д.)
После приезда Вирта оберонщики делают попытку объединиься, "чтоб не пропасть поодиночке".
Надеюсь нам это удастся, тогда возможно будет выполнять на Обероне и крупные проекты.

Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.

Хоар
Re[6]: BlackBox всерьёз
От: шапокляк  
Дата: 27.11.05 08:50
Оценка:
Здравствуйте, MShura, Вы писали:

MS>Продолжаю критиковать утверждение сайта здесь, что Oberon занимает господствующее положение в оборонном секторе.



СГ>>1) Абсолютно точно что для всех OS написанных на Обероне (Native Oberon OS, BlueBottle OS, XO/2 hard-realtime, Portos hard-realtime, Pelican, и т.д.).

СГ>>2) Для всех наиболее распространённых (Windows, Linux, UNIX, Mac OS) здесь. В частности, есть версия Блэкбокса под UNIX на 64-битныйх процессорах, та самая версия на которой мониторится крупнейшая на планете гидроэлектростанция на Амазонке.
СГ>>3) Про то на каких процессорах работают Обероны я даже затрудняюсь перечислить, уж очень их много. Скажу только что портирование компилятора языка Оберон на новый тип процессора требует примерно три человеко-месяца труда. Этим в ETH студенты/аспиранты занимаются — мол, портировал, значит курсовую сдал.

СГ>>Посмотрите пожалуйста сайт http://www.oberon2005.ru/ там дано много ссылок в которых Вы найдете более развернутый ответ.


MS>(1)

MS>Ничего, что я видел на этом сайте не говорит, что Oberon работает в real-time OS и/или на сигнальных процессорах.

MS>На сайте Native Oberon

MS>http://www.oberon.ethz.ch/native/
MS>Нет ни слова про временный характеристики и вообще нет слов real-time.

MS>

MS>http://www.cs.cornell.edu/People/egs/portos/
MS>What is PortOS ?
MS>PortOS is an instructional operating system for the Post-PC environment, designed for use in an undergraduate operating systems course. It provides the necessary infrastructure for developing operating systems on desktops and handheld devices. It runs under Windows, including NT/2K/ME/98/XP as well as CE/PocketPC/HandheldPC. Its main goal is to introduce concepts related to self-organization, ubiquitous computing and mobility into the undergraduate curriculum. It supports standard development and debugging tools, including command line builds as well as Microsoft Visual Studio.


MS>Надеюсь Вы понимаете, что Windows/Linux/Mac не являются системами реального времени.


MS>(2)

MS>На примере гидролокаторов можно привести пример, в котором оператор сидит за компьютером с Windows и управляет программой написанной на VB, которая через порты или сеть управляет платами с DSP, которые в свою очередь и делают основные вычисления. Никто же в этом случае и в здравом уме не будет говорить, что VB и Windows занимают господствующее положение в секторе гидролокации.

MS>(3)

MS>А портирование на новый процессор наверное такой простой, потому что люди просто подкручивают транслятор Oberon -> C?
MS>Надо ли говорить, что для каждого сигнального процессора пишется специальный диалект C, с помощью которого транслятор может эффективней генерить код. Следует ли считать, что при портировании Оберона на новый процессор также появляется новый диалект Оберона?

MS>За сим позвольте откланяться.



Оберон в реальном времени — это конечно несерьезно. Ему бы в нереальном хотя бы задышать. Хотя, не могу не согласиться, что для реального теоретически противопоказаний у Оберона нет. Это да.
Шапокляк
Re[3]: BlackBox всерьёз
От: Дарней Россия  
Дата: 27.11.05 09:34
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Вот когда сам начальником стану, тогда мои подчинённые будут писать на Оберонах...


не забудь поделиться впечатлениями, когда(?) до этого дойдет
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[3]: BlackBox всерьёз
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 27.11.05 10:10
Оценка: +1
Здравствуйте, AVC, Вы писали:

AVC>Зашел сюда по данной тобой ссылке, чтобы ответить на вопрос.


Спасибо, ответ получился интересный и, как мне кажется, объективный.

AVC>Как видишь, не слишком густо, но это в силу определенных обстоятельств.

AVC>(Поэтому, ИМХО, зря ты раскритиковал Сергея Губанова за то, что он мало пишет на Обероне. У него те же обстоятельства, что и у меня. А "некоммерческого" ПО на Компонентном Паскале он написал приличное количество. Видел его подсистему Мастер и т.д.)

Так пускай бы рассказал о некоммерческих проектах. В моем вопросе ограничений на только коммерческие проекты не было.
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[3]: BlackBox всерьёз
От: Stoune  
Дата: 30.11.05 00:03
Оценка:
Здравствуйте, ie, Вы писали:

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


MS>>Я вам не скажу за всю оборонку, вся оборонка очень велика, но в гидролокаторах используются DSP, программы на которых пишутся на C и asm, о других языках речи просто не идет.


ie>А как же C++? Очень даже используется.

Єто скорее С с класами, а не ANSI C++ 98.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[4]: BlackBox всерьёз
От: ie Россия http://ziez.blogspot.com/
Дата: 30.11.05 04:58
Оценка:
Здравствуйте, Stoune, Вы писали:

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


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


MS>>>Я вам не скажу за всю оборонку, вся оборонка очень велика, но в гидролокаторах используются DSP, программы на которых пишутся на C и asm, о других языках речи просто не идет.


ie>>А как же C++? Очень даже используется.

S>Єто скорее С с класами, а не ANSI C++ 98.

Опять же, как сказал LelicDsp записит от процессора. Компиляторы тех, с которыми приходилось мне работать поддерживали ANSI C++.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Превратим окружающую нас среду в воскресенье.
Re[5]: BlackBox всерьёз
От: Stoune  
Дата: 01.12.05 00:26
Оценка:
Здравствуйте, ie, Вы писали:

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


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


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


MS>>>>Я вам не скажу за всю оборонку, вся оборонка очень велика, но в гидролокаторах используются DSP, программы на которых пишутся на C и asm, о других языках речи просто не идет.


ie>>>А как же C++? Очень даже используется.

S>>Єто скорее С с класами, а не ANSI C++ 98.

ie>Опять же, как сказал LelicDsp записит от процессора. Компиляторы тех, с которыми приходилось мне работать поддерживали ANSI C++.


Можно пример компилятора для DSP где реализуется ANSI C++ модель шаблонов, а коли нет, то о каком стандарте идёт речь, другое дело что не всегда єто там нужно и даже реализируй производитель эти шаблоны, STL под єто дело фиг прикрутишь, так как в моих приложениях чаще всего нет операционной системы, а следовательно и некому предоставлять ему необходимые сервисы. А без оного разницы с С с класами я не вижу. А вот совместимость с хотя бы ANSI C89 обязательна. Желательными являются ANSI C99. Embedded C++ это вещи пользительная, но редко реализированая, по крайней мере для сигнальных процесоров, но и он без шаблонов, исключених(их там и не нужно), RTTI(тоже лесом) есть просто С с класами.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[3]: BlackBox всерьёз
От: Дарней Россия  
Дата: 03.12.05 11:49
Оценка:
Здравствуйте, AVC, Вы писали:

AVC>Затем к лету я ввязался в один проект, который к тому времени никак не могли завершить на C++ .NET. В проекте наблюдались все прелести Си++ (утечки памяти, непредсказуемый crash и т.д.), поэтому я предполагал переписать его полностью


как правило, крайне неудачное решение
в данном случае проблема легко бы решалась отказом от ручного управления памятью, где это ненужно, и использованием смартпойнтеров — где без этого нельзя обойтись
в зависимости от масштаба проекта и качества кода, это заняло бы от нескольких часов работы до нескольких недель

AVC>на Обероне.


интересно, какими соображениями было вызвано данное решение? (если не считать личных пристрастий к Оберону)

AVC>На Компонентном Паскале были реализованы только те части проекта, где раньше "конь не валялся": связанные с OLE и COM.


иными словами, части функциональности на уровне средней руки курсовой. Кстати, а почему бы не использовать обероновскую компонентную систему, вместо прогнившей и отстойной COM?

AVC>В настоящее время пишу на Компонентном Паскале программу, моделирующую поведение аппаратуры.


очень интересно — какого рода аппаратуры, и на каком уровне детализации?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[4]: BlackBox всерьёз
От: AVC Россия  
Дата: 03.12.05 13:26
Оценка:
Здравствуйте, Дарней, Вы писали:

AVC>>Затем к лету я ввязался в один проект, который к тому времени никак не могли завершить на C++ .NET. В проекте наблюдались все прелести Си++ (утечки памяти, непредсказуемый crash и т.д.), поэтому я предполагал переписать его полностью


Д>как правило, крайне неудачное решение


Это зависит от обстоятельств.
В данном случае, ИМХО, так было бы лучше.

Д>в данном случае проблема легко бы решалась отказом от ручного управления памятью, где это ненужно, и использованием смартпойнтеров — где без этого нельзя обойтись

Д>в зависимости от масштаба проекта и качества кода, это заняло бы от нескольких часов работы до нескольких недель

Проблемами с памятью дело не ограничивалось.
А что касается нескольких недель работы, то, увы, их как раз и не было.
Проект доводился до ума в свободное время. То, что иногда называется "халтурой".

AVC>>на Обероне.


Д>интересно, какими соображениями было вызвано данное решение? (если не считать личных пристрастий к Оберону)


Уверенностью в выполнимости этой задачи.
И сомнениями в реальности исправления в сжатые сроки кода, создававшегося вначале совершенно другими людьми без особого опыта.
Я не говорю о "выбрасывании" прежнего проекта целиком в корзину. Из него получился хороший прототип, существенно облегчавший создание новой программы.
Были и дополнительные факторы.
Проект велся на C++ .NET (не знаю зачем, для "современности" что-ли?), мне надо было ехать в деревню без всяких признаков цивилизации, а мой (очень) старенький ноутбук не вмещал это чудо (в отличие от BlackBox или GNU C++).
Бывает, что и такие мелочи имеют значение!
Кроме того, я не большой любитель сидеть в отладчике. Сам я справляюсь с собственными багами без отладчика. (Вообще, отладка у меня съедает сравнительно немного времени). Один из любимых приемов: если кусок кода "глючит", и не сразу ясно, почему — переписать его. Иногда замена поиска ошибки переписыванием (небольшого) куска кода экономит значительное время.

AVC>>На Компонентном Паскале были реализованы только те части проекта, где раньше "конь не валялся": связанные с OLE и COM.


Д>иными словами, части функциональности на уровне средней руки курсовой. Кстати, а почему бы не использовать обероновскую компонентную систему, вместо прогнившей и отстойной COM?


В требованиях заказчика значился список программ, с которыми надо было обмениваться данными.
К сожалению, эти программы не пользуются обероновской компонентной моделью.

AVC>>В настоящее время пишу на Компонентном Паскале программу, моделирующую поведение аппаратуры.


Д>очень интересно — какого рода аппаратуры, и на каком уровне детализации?


Речь идет об имитации связки процессор + доп.устройства (для мультимедиа).
Цель: "опережающая" разработка программ для нового процессора.
Уровень детализации, скажем так, прогрессирующий.
Первую версию я уже сделал (после ответа eao197), дальше будем добавлять новые факторы по мере необходимости.

Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.

Хоар
Re[6]: BlackBox всерьёз
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.12.05 04:21
Оценка: +1 :)))
Здравствуйте, Nickolay Ch, Вы писали:

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


О... Я тут читал статью о том, как к Оберону прикрутили эксцешоны. Сильно через задницу, но все же получилось. Так что скоро он их ругать не будет.
... << RSDN@Home 1.2.0 alpha rev. 620>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.