На базарной площади довольно часто можно слышать высказывания об
Обероне. Мне кажется, что на базарной площади пора появиться ветке об
этой системе и языке, что-то вроде "Мысли об Обероне". Что это такое, перспективы
этой системы, что
полезного можно извлечь из него для программирования на Дельфи
(например) и др.
Ivan
Всего в теме 4531 сообщение
Ссылки по теме "Оберон" и "Компонентный паскаль"
Отслеживать это обсуждение
- Free Pascal, Oberon, BlackBox
- Разработка препроцессора gpre для delphi\freepascal.
- Component Pascal и среда разработки BlackBox
- FreePascal: реальная альтернатива или OpenSource — блажь?
№ 2381 14-07-2005 13:08 | |
№ 2380 14-07-2005 12:40 | |
Ответ на »сообщение 2379« (S.A.)
___________________________
Практически со всем согласен.
Я просто хотел обратить внимание, что без стандартизованных библиотек язык программирования не может существовать, как естественный язык без словаря. Представте себе, что мы пытались бы общаться имея только алфавит и правила русского языка. Глокую куздру помните? Она синтаксически безупречна.
Но алфавит может создать один человек (так с нашим алфовитом и было :).
И хороший синтаксис может создать один человек (слава Вирту).
А вот словарь в одиночку не создать, для этого надо представлять себе потребности в терминологии множества людей. Без серьезной организации, занятой разработкой стандартов, языки, разработанные гениальными одиночками, так и останутся произведениями искуства и учебными пособиями, а не рабочими инструментами.
Можно взять за основу библиотеки, наработанные в других языках, они дадут представление о востребованных функциях. Но надо навести порядок: выявить однотипные, придумать простые принципы именования, принципы упорядочивания параметров и т.д. Это большая и очень нужная работа.
Вот только кто может это сделать?
№ 2379 14-07-2005 09:09 | |
>>>Почему Паскаль в свое время не стал языком
>>>промышленной разработки? Потому что по сути
>>>языком не являлся.
Если Вы про Паскаль от Вирта (1970), то здесь ситуация еще проще: никто и не пытался делать язык промышленной разработки. PASCAL создавался как средство обучения студентов основам программирования и главная цель состояла в том, что создать язык для систематического обучения программированию и избавиться от недостатков Фортрана, Алгола-60 и других предшественников. Это уже потом, Филипп Кан и борландовцы взяли паскаль "на вооружение" и стали делать из него промышленный язык.
А вообще успех языка в промышленности зависит от очень многих факторов и стандартные библиотеки это только один из них. Уверен, что успешная судьба языка С напрямую связана с успешной судьбой UNIX. Если бы UNIX была бы написана на Паскале, то... Но "если бы" - это тема для историков науки и техники.
Или, например, COBOL. Билл Гейтс сказал что-то вроде того, что хотел бы видеть Кобол в числе языков, реализованных под .NET и пошло-поехало. А если бы не сказал? А язык EGL? Кто о нем знает? Почти никто :). А я могу точно сказать, что в ближайшее время ему ничего не грозит. Потому что это родное дитя IBM и они его, как положено, холят и делают ему необходимые финансовые вливания.
В общем успех языка в промышленности это как все в бизнесе - зависит от десятков различных больших и маленьких факторов. Языкам от ETH в этом смысле просто повезло меньше (не нашлось для Паскалей своей фирмы Sun :).
№ 2378 14-07-2005 07:34 | |
Хотелось бы посмотреть на ситуацию под другим углом.
Почему Паскаль в свое время не стал языком промышленной разработки? Потому что по сути языком не являлся.
Язык это не только алфавит и синтаксис. Это еще и словарь. А словарь паскаля состоял из двух слов: Read и Write. Все остальные слова предлагалось придумывать по мере необходимости.
Конечно все реализации содержали стандартные библиотеки. Вот только стандартными они не были :(
Каждый разработчик придумывал различные наборы процедур с разными названиями, функциональностью, набором параметров. По сути получались разные языки с одинаковым синтаксисом.
Ни о какой переносимости речи не было.
Необходим стандарт на библиотечные функции и базовые объекты. Чем удачнее он будет, тем больше шансов на распостранение языка.
№ 2377 14-07-2005 06:13 | |
>>>Несколько месяцев назад я обратился на форуме
>>>к Оберон-сообществу с предложением присылать
>>>свои статьи в любой степени готовности.
>>>Угадайте, сколько в ответ пришло писем, а вы
>>>говорите наступать... :o)
Вы правы в главном! Надо писать на конкретном материале. У меня в следующем учебном году будет возможность апробировать Блэкбокс в учебно-проектной деятельности (даже две возможности в двух московских гимназиях). К середине-концу учебного года будут результаты. Задачи подбираются "под Оберон", поэтому результаты обязаны быть положительными. "Рыбу" статьи постараюсь сделать как можно раньше. Если нет возражений, то могу в порядке исключения предложить материал не в отраслевую печать Минобразования, а Вам. Думаю, дополнительный "вес" Вашего журнала нашему общему делу будет полезен.
№ 2376 14-07-2005 06:03 | |
Ответ на »сообщение 2375« (S.A.)
___________________________
'Мир ПК' пока еще активно в популяризацию Оберона не включался, во многом по тем соображениям, что прослеживаются в моих сегодняшних сообщениях (между строк, между слов, между букв).
Несколько месяцев назад я обратился на форуме к Оберон-сообществу с предложением присылать свои статьи в любой степени готовности. Угадайте, сколько в ответ пришло писем, а вы говорите наступать... :o)
Наступать-то давно пора, но не всем фронтом и с хорошей подготовительной работой. В сентябре в Россию приезжает Никлаус Вирт. Если смотреть сквозь призму революционной ситуации, то невольно напрашиваются параллели с прибытием В.И.Ленина на Финляндский вокзал в апреле 1917 г.
Боюсь, второго такого шанса Оберону может и не предоставиться...
№ 2375 14-07-2005 05:42 | |
>>>Наступать-то можно по всем фронтам, но вот
>>>вопрос: есть ли для этого в достатке силы и
>>>средства, составлен ли план наступления,
>>>подготовлен ли резерв главного
>>>командования? :o)
>>>Пока на данный момент имеются следующие
>>>публичные ресурсы:
>>>1. Проект 'Информатика-21'.
>>>2. Форумы в уважаемом Королевстве.
Руслан, Вы еще забыли про журнал "Мир ПК", который пишет не только о С++ :))). Кстати, в России печатное слово это почти 30 процентов успеха любого дела. Я это по себе знаю - говоришь что-то устно - как об стенку, показываешь статью -да..., что-то в этом есть :).
А по главному вопросу мое мнение такое: демократия в технической политике - это хорошо. Конечно, Президент не издаст Указ о повсеместном использовании Оберона :(. Но и ЗАПРЕЩАТЬ его применение для решения задач никто никогда не будет :). А это значит, что любую задачу, которую можно хорошо решить с помощью Оберона я могу решить именно так и НИКТО мне ничего не скажет.
Надо понять - ситуации везде разные. У меня был в моей практике такой случай. Я еще в эпоху MSDOS/Win3.1. работал на фирме, где рядом со мной были три программиста, которые делали пальцы веером и писали на Си. А я к тому моменту хорошо писал на Clipper (помните, был такой хороший компилирующий язычок-СУБД).
Так вот задачи у нас были, по сути, БД-шные. Есть файл базы, на входе данные, на выходе отчеты и кругом поиски, сортировки, группировки и т.п.
На Клиппере такие штучки делались в три раза быстрее, чем "низкое" программирование на Си. Когда мои "соратники" оценили трудоемкость одного модуля в две недели работы, а я "положил" его шефу на стол через четыре дня, то "политика" была принята в две секунды. Основную проблемную часть сделали на Клиппере, а на Си были написаны только всякие "рюшечки": инсталляторы-деинсталляторы, упаковщики-распаковщики и т.п. И шефу было "до фени" на чем я писал свою задачу, хоть на языке "Мумбы-Лумумбы". Лишь бы ТЗ заказчика было выполнено.
Вывод: использовать Блэкбокс на территории России не запрещается. А для того, чтобы народные массы его осваивали, надо совсем немного. Надо, чтобы эти массы О НЕМ УЗНАВАЛИ. Чем больше, тем лучше. А для этого нужны:
1) Свободный доступ к дистрибутивам и документации
2) Ресурсы в сети
3) Публикации в прессе
4) Готовые наработки в виде модулей и подсистем, ориентированных на различные предметные области
5) Агитационная работа на местах :))
№ 2374 14-07-2005 05:08 | |
>>>В плане переосмысления путей дальнейшего
>>>распространения Оберона в России давайте тогда
>>>еще больше упростим задачу. Требуется
>>>определить целевые аудитории, где в лице
>>>Компонентного Паскаля (Оберона) не обязательно
>>>обеспечивается ПОЛНОЦЕННАЯ замена Delphi.
Мои "интересы" лежат в области среднего образования и на "стыке" между средним и высшим. Поэтому мне трудно делать оценки для других предметных областей. Но, тем не менее, ряд возможных областей для Оберонов могу выделить.
1) Первое. Это, конечно, сфера образования, прежде всего среднего. Здесь Оберонам на данный момент практически нет конкуренции. Чтобы там не говорили оппоненты, не будет нормальный человек запускать большую промышленную среду с десятками "рюшечек" для того, чтобы объяснить, что такое массив или оператор цикла. Это просто нерационально. По этой причине в школе до сих пор доминируют Turbo Pascal и QBasic(!). А Delphi и прочие появляются "на сцене" уже тогда, когда человек научился понимать разницу между while и repeat. Вот эта ниша между полным непониманием, что такое программирование, и готовностью работать в "насыщенной" промышленной среде пока совершенно свободна и Блэкбокс может занять это место (в общем у меня он уже это место занимает).
2) Вторая ниша. Думаю, что это задачи, где удельный вес и роль интерфейса минимальны, а роль алгоритма максимальна. Думаю, что к этим задачам можно отнести все "вычислительные" задачи ("числодробилки"), многие задачи дискретной математики. Для этих задач большинство "инструментов", которые так красиво смотрятся в Delphi и прочих студиях просто не нужны, они там, как Мерседес в спальне :). На соседней ветке (И-21) я привел пример алгоритма для решения задачи "Ханойские башни". Понимаю, конечно, что это опять пример на тему образования, но суть дела от этого не меняется: у меня есть задача, особые дельфийские "красивости" мне не нужны (только отвлекают), ввод-вывод может быть вообще потоковым (In->StdLog) - решение в Блэкбоксе выглядит абсолютно естественным.
3) Третья ниша. Здесь я не специалист, пусть меня поправят профи, но все-таки. Любые системы, где безопасность программирования стоит на 1 месте среди прочих плюсов языка. Что мы здесь имеем на данное время: Ada 95 и Модула 2. С Адой трудно тягаться - в ней параллельное программирование "зашито". Но Модулу, вроде бы, Обероны могут заменить в полном объеме.
4) Четвертое. "Непрофессиональное программирование" (название, конечно, условное).
О чем речь? Ну, конечно, не о тех пользователях, которые вообще не могут программировать, кроме как в Word'e :). О тех, которые могут, но которым не нужно делать промышленный проект. А нужно, что-то вроде моих ханойских башен: быстрый ввод, быстрый вывод и алгоритмы, алгоритимы, алгоритмы. В общем "рюшек" поменьше, а "математики" и надежности побольше. И чтобы меню и прочие нужные штучки уже были готовы. Не чтобы просто делались, а вообще были готовы к употреблению - ну, например, как в Блэкбоксе :)). Можно сказать, что таких пользователей и таких задач нет? Есть. У меня есть живой пример. Мой знакомый математик, который может программировать, когда ему надо "быстренько" какую-то модельку рассчитать о Дельфях и прочих вижуал-студиях даже не вспоминает. Он запускает Турбо Паскаль и свою модельку в нем рисует. Я его однажды спросил, "А чего, мол, в нем, устаревшем?". На что получил ответ: "Мне красивые кнопочки нужны или задачу решить?". Мы пришли к выводу, что задача все-таки важнее. Можно спросить: а почему тогда не Блэкбокс? Так не знает он ничего об этой системе, я ему еще о ней не рассказал. Из отпуска выйду - обязательно дам ему дистрибутивчик (в порядке эксперимента :).
Пока все.
Извините, за многословие.
Всем удачи.
№ 2373 14-07-2005 04:51 | |
Ответ на »сообщение 2372« (Руслан Богатырев)
___________________________
Наступать-то можно по всем фронтам...
Нельзя!
Просто в силу сложившегося положения вещей...
Это хорошо info21 существует на таком уровне иерархии и с стаким правильным пониманием ситуации...
А вот меня мои шефы просто не поймут. Вот представьте, организация в течении 30 лет занимается очень серьёзными системами (чкть по-выше самолётов :о) ). Наработана масса кода (догадайтесь на чём! :о) ). Этот код работает. При сегодняшней текучке проблем найти человека ХОТЬ КАК-ТО умеющего программировать на Си - не проблема. Положение облегчается тем, что знание GUI не нужно. А осложняется объемами работ с аппаратурой и на низком уровне. Но сложилось равновесие. И что будет, если вдруг будет принято решение переходить на ряд Оберонов? Это просто ломка сложившихся традиций и подходов. К проектированию и инструментарию. Тут, слава Богу, что POSIX-систему взяли за основу, но и то трясло контору годы (а приплюсуйте сюда беспредел и безнадёгу 90-х). Второй раз - не получится. Люди стали прагматичнее и напуганней. Тут про Аду-то еле удаётся заставить послушать (а по ней не в прмер материалов, наработок и тулзовин больше!), а что такое есть КП или АО? На уровне споров в курилке - ещё проходит, хотя и с криками и "накалом", а начальство - как чёрт от ладана бегает от малейшего намёка на какие-либо реформы... И я их прекрасно понимаю. Просто жизнь не та, условия изменились. Каждый барахтается сам по себе, выплывает, как может. Господдержка упала до нуля, ни о каких программах и речи не ведётся... А для поддержки "энтузиазьма на местах" на всех info21 не хватает...
№ 2372 14-07-2005 04:12 | |
Ответ на »сообщение 2371« (А.П.)
___________________________
Наступать-то можно по всем фронтам, но вот вопрос: есть ли для этого в достатке силы и средства, составлен ли план наступления, подготовлен ли резерв главного командования? :o)
Пока на данный момент имеются следующие публичные ресурсы:
1. Проект 'Информатика-21'.
2. Форумы в уважаемом Королевстве.
Кто будет наступать? Что такое Оберон-сообщество в России сегодня? Это некое формальное (неформальное) образование с обнародованной программой? Или что-то другое? Есть ли силы и средства для обеспечения сервисной поддержки тем, кто хотел бы попробовать сделать шаги в освоении Оберона?
Вопросы, вопросы...
Отслеживать это обсуждение
Дополнительная навигация: |
|