Оберон-технология: особенности и перспективы |
Тематика обсуждения: Оберон-технология. Особенности, перспективы, практическое применение.
Всего в теме 6256 сообщений
Добавить свое сообщение
Отслеживать это обсуждение  Обсуждение из раздела Школа ОБЕРОНА
№ 1276 26-12-2006 13:48 |  |
>>>Да, этот язык сильно другой в числе упомянутых, но на нем много чего пишут.
Вот поэтому я и не люблю подобные дискуссии :)
Как то я попробовал подсчитать на скольких языках программирования пишут в настоящее время. У меня получилось число порядка 40-50. Ну и что из этого следует? Только одно - пусть будет больше языков, хороших и разных, универсальных и не очень. Пусть каждый выбирает то, что ему больше подходит для его задач. И как уже "достали" эти беспочвенные споры типа "A vs. B?". Интересно, а в 60 годы тоже пытались доказать, что "круче" Кобол или Фортран?
Кстати есть такой язык Lua. На нем тоже что-то пишут. Хотя многие даже не слышали такого названия :) Это я к тому, что "многие пишут" в серьезном деле аргументом не является. Многие, например, пьют всякую дрянь :)
№ 1275 26-12-2006 10:46 |  |
Ответ на »сообщение 1274« (Сергей Перовский)
___________________________
Ответ на »сообщение 1271« ()
В жизни всегда есть место подви... в смысле, задачам, требующим максимальной производительности.
Максимальная производительность и нативный код вещи ортогональные. Java-программы тоже в конечном итоге превращаются в нативный код. Зато вот возможность запуска одной программы на разных платформах без перекомпиляции можно рассматривать как однозначный плюс. Сообщение не подписано
№ 1274 26-12-2006 10:41 |  |
Ответ на »сообщение 1271« ()
___________________________
>>>А это однозначно "положительное" свойство языка?
В жизни всегда есть место подви... в смысле, задачам, требующим максимальной производительности.
№ 1273 26-12-2006 10:40 |  |
Ответ на »сообщение 1266« (Jean)
___________________________
Особенно перед C/C++ :) Ну совсем никаких преимуществ.
Приемущества можно найти перед каждым языком, особенно если угол зрения выбрать соответствующий. Но недостатки тоже присутствуют, и их много.
Проблема в том, что существенная часть этих ошибок на таких языках, как обероны, невозможна в принципе.
Какие-то невозможны, какаие-то наоборот возможны только в обероне. Придумай сам пример с упоминавшимся перечислимым типом, где компилятор С/C++/Java/C#/Pascal поймает ошибку, а оберон с удовольствием скомпилирует.
Поэтому из Вашего мэйнстрима надо убрать хотя бы C/C++ (программировать на них просто опасно),
C/C++ сдают свои позиции, но поскольку на них написана гора кода, они еще лет 10 будут мэйнстримовыми, при всех своих недостатках.
Яву, потому что она виртуальная машина и сравнивать ее с нативным компилятором не корректно,
Наличие виртуальной машины не выбивает Java из мэйнстрима.
Python тоже из другой области...
Да, этот язык сильно другой в числе упомянутых, но на нем много чего пишут.
Сообщение не подписано
№ 1272 26-12-2006 10:38 |  |
Ответ на »сообщение 1268« (Сергей Губанов)
___________________________
>>>Тип перечисление НЕВОЗМОЖЕН в динамически расширяемых модульных системах,
Тем хуже для динамически расширяемых модульных систем :)
№ 1271 26-12-2006 10:26 |  |
Ответ на »сообщение 1267« (Alexey Veselovsky)
___________________________
А разве существует компилятор C# в нативный код?
А это однозначно "положительное" свойство языка? Сообщение не подписано
№ 1270 26-12-2006 10:21 |  |
Ответ на »сообщение 1268« (Сергей Губанов)
___________________________
Ответ на »сообщение 1265« ()
Разницу между "лёгкостью" и "невозможностью" не понимаете?
Тип перечисление НЕВОЗМОЖЕН в динамически расширяемых модульных системах,
а такие категории как труден/лёгок - это из другой оперы.
Ну зачем же так категорично. Достаточно ввести понятие "расширяемого" перечислимого типа. Или понятия версионности. Или... Можно много чего придумать за рамками виртовских "динамических расширяемых модульных систем", благо такие системы не единственно возможные и не единственно абсолютно правильные. Сообщение не подписано
№ 1269 26-12-2006 08:41 |  |
Ответ на »сообщение 1263« (Владимир Лось)
___________________________
Ответ на »сообщение 1261« (пачимучкин)
___________________________
ОБРАЗОВАННЫХ, ГРАМОТНЫХ ПРОГРАММИСТОВ.
Ознакомиться с набором функций и классов конкретных библиотек можно всегда успеть (или не успеть... :о) ). Но никакой объём знаний по "конкретике", "живость ума", "подвешенность языка" (в том числе и языка программирования :о) ) не заменят базисного, классического, математического образования.
"Навороты" в иных языках очень часто оказываются фиговыми листками, призванными прикрыть архитектурные и конструкционные недостатки. Не давайте себя оморочить двухстрочными примерами краткой записи а ля "здесь так можно, а вы так сможете в своих оберонах?". Всё это ерунда. Оберон - язык записи идей мира императивного программирования, а не язык записи конкретных решений.
Хорошо, я понял. В Оберонах(в дальнейшем, в том числе для удобства, буду говорить только о КП) есть все для удобной, быстрой,эффективной, отвечающей требованиям сегодняшнего(и завтрашнего) дня работы. Что касается подготовки прогаммистов. Нужно лишь стать грамотным программистом. Как стать грамотным, образованным программистом? Ясно, что классического высшего образования тут недостаточно. Ясно, что практики, перемежающейся с КПК, и живого ума здесь недостаточно. Время-то летит. Всего не успеть, всего не передумать. Что нужно еще? Ваше мнение? Как пройти путь к ослепительным высотам профессионального проектирования кратчайшим путем?
Пожалуй, палку-копалку я все же перегнул. Спрошу иначе и приземленней. "Что почитать на сон грядущий, что спровоцирует мозговую деятельность в нужном направлениии, не засорит мозги, не перегрузит их малозначительными деталями и наукообразными терминами, а напротив, сорганизует и обогатит идеями?"
Где он, этот золотой фундаментальный минимум? Что в него входит? Перечислите хотя бы часть, буду очень благодарен:-))
№ 1268 26-12-2006 08:37 |  |
Ответ на »сообщение 1265« ()
(даже перечислимым типом обделили). Я допускаю, что для этого у Вирта были веские причины (легкость обучения, легкость динамического расширения, легкость создания компилятора)
Разницу между "лёгкостью" и "невозможностью" не понимаете?
Тип перечисление НЕВОЗМОЖЕН в динамически расширяемых модульных системах,
а такие категории как труден/лёгок - это из другой оперы.
№ 1267 26-12-2006 07:17 |  |
Ответ на »сообщение 1266« (Jean)
___________________________
>>>я не вижу у него никаких преимуществ перед мэйнстримом в лице >>>Java/C#/Python/C++/C.
Особенно перед C/C++ :) Ну совсем никаких преимуществ.
Недавно на глаза попалась очередная книга на тему критики С/C++.
"Уэллин С. Как не надо программировать на C++,изд.«Питер»,2004".
Советую. И дело тут не в том, что в программах на C++ возможны коварные ошибки - их можно сделать на любом языке, это и так ясно. Проблема в том, что существенная часть этих ошибок на таких языках, как обероны, невозможна в принципе. Поэтому из Вашего мэйнстрима надо убрать хотя бы C/C++ (программировать на них просто опасно), Яву, потому что она виртуальная машина и сравнивать ее с нативным компилятором не корректно, Python тоже из другой области... Итого, в "сухом" остатке остается: C#. Вот этот язык и давайте сравнивать с Оберонами.
А разве существует компилятор C# в нативный код? По моему C# ровно как и ява, живет исключительно в своей виртуальной машине (.нет фреймворк).
Кстати, нативные компиляторы явы по моему таки существуют. См. ту же JNode например.
Добавить свое сообщение
Отслеживать это обсуждение 
Дополнительная навигация: |
|