OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Суббота, 27 Апрель, 2024 23:29

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:04 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Илья Ермаков писал(а):
Alexey Veselovsky писал(а):
Гм. А какие расширения языка (видимо язык это CP) вы используете?


Я имею в виду готовность к компонентности и extensible OOP, в терминах Шиперски, а не расширяемость синтаксиса.

Тогда это не расширяемый язык. Это программы/комплексы на нем писаные расширяемые. Не следует подменять понятия.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:05 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Wlad2 писал(а):
Вы можете ОРГАНИЗОВАТЬ/ВВЕСТИ в них тот уровень степени жёсткости, который вам необходим ао проектируемой системе.


Сам стиль мышления там не способствует жёсткости. Это - инструменты индивидуального выражения мысли индивида :)

Критерий - насколько похожи будут на уровне "в малом" и "среднем" написанные двумя разными людьми, опытными в данном языке, хорошие модули.
Т.е. сталкивает ли язык к типовому виду решений или нет.
На КП это очень сильно заметно - код разных разработчиков становится трудноразличим, теряет индивидуальность.

Для инженерии унифицированность важна. Но чтоб не "документами закреплённая", а сами средства выражения способствовали ей.

Кто-то, конечно, болезненно переносит эти ограничения на самовыражения... тут ведь ещё и индивидуальная эффективность может падать ("вот, я бы сейчас написал вот так - быстро и красиво... а тут..."). Но в системе, особенно когда нужно учить новых и давать им как можно-скорее около-реальные задачи, эффективнее ограничить. Самовыражаться можно на решении задач до уровня реализации в коде.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:07 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Alexey Veselovsky писал(а):
Илья Ермаков писал(а):
Alexey Veselovsky писал(а):
Гм. А какие расширения языка (видимо язык это CP) вы используете?


Я имею в виду готовность к компонентности и extensible OOP, в терминах Шиперски, а не расширяемость синтаксиса.

Тогда это не расширяемый язык. Это программы/комплексы на нем писаные расширяемые. Не следует подменять понятия.


Ну здравствуйте.

Понятие компонентно-ориентированного языка программирования кто отменил?

См. Шиперски; Пфистера, Губанова в статьях на ОберонКоре.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:11 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Илья Ермаков писал(а):
Понятие компонентно-ориентированного языка программирования кто отменил?

См. Шиперски; Пфистера, Губанова в статьях на ОберонКоре.


Расширяемый язык это одно. Компонентно-ориентированный язык -- это другое. Расширяемый (во все стороны) это скажем лисп. Расширяй не хочу. Но к компонентам это отношения не имеет никакого. Вот и всё. Не следует вводить терминологическую путаницу.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:12 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1693
Илья Ермаков писал(а):
Критерий - насколько похожи будут на уровне "в малом" и "среднем" написанные двумя разными людьми, опытными в данном языке, хорошие модули.

Абажите, Илья! У вас - противоречие! Разве вы его не замечаете?
Мы же говорим о КОМПОНЕНТНЫХ средах исполнения и языках их поддержки?
Основное качество таких сред какое? Скрывая реализацию, обеспечить связь.
Какая разница, какой кавардак внутри, в реализации компонента???
Компонент удовлетворяет соглашениям по статическим и динамическим интерфейсам? Всё - вопрос закрыт! Это - РАБОЧИЙ компонент.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:18 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Тут диалектика: работаем с каждым компонентом так, как будто не знаем его реализации...
Но знать-то её лучше знать.

Я за компонентный open-source. Не говоря про ситуации, где лучшей формой повторного использования является таки копи-паст, вместо порождения лишней зависимости наружу.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:26 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1693
Илья Ермаков писал(а):
Тут диалектика: работаем с каждым компонентом так, как будто не знаем его реализации...
Но знать-то её лучше знать.

Ох, чего-то как-то вы - юлите, чесслово!
Мы же оговорили требование на удовлетворению статики и динамики в процессе общения с данным компонентом! Не нужны вам знания о его "кишках"!

Илья Ермаков писал(а):
Я за компонентный open-source.

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

Илья Ермаков писал(а):
Не говоря про ситуации, где лучшей формой повторного использования является таки копи-паст, вместо порождения лишней зависимости наружу.

...Ну, а теперь, сделайте ещё один шажок в своих рассуждениях! И к чему вы придёте? Да у же к готовой форме реализации вашего желания - ПАРАМЕТРИЗОВАННЫМ ШАБЛОНАМ Си++ :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:30 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Я уже говорил, что для меня то средство, которое существует только на этапе компиляции - как бы оказывается несуществующим вообще...

Я лучше сгенерирую динамически, метапроцедурой - и пусть грузится тут же в память.

Что проще - зависеть от фантазий комитета и реализаторов сложного языка - а как там эти шаблоны работают... а что они там введут в следующей версии... или зависеть только от самого себя (как я там в частном случае генератор написал).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:32 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Wlad2 писал(а):
...Ну, а теперь, сделайте ещё один шажок в своих рассуждениях! И к чему вы придёте? Да у же к готовой форме реализации вашего желания - ПАРАМЕТРИЗОВАННЫМ ШАБЛОНАМ Си++ :)

Ну зачем же сразу С++? Это очень жестоко. Это не осторожно. У здешней публики на "С++" сразу условный рефлекс -- что-нибудь возразить. Не важно по теме или нет. :-) Впрочем, вам повезло, Илья относится к тем не многим кто адекватно реагирует на С++. :-)

Лучше, на самом деле, сказать про Модулу-3 например. В крайнем случае Аду. Действительно к чему в данной задаче тьюринг-полнота языка шаблонов? Вполне хватит и не тьюринг-полных собратьев из Ады и Модулы-3.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:37 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Илья Ермаков писал(а):
Я уже говорил, что для меня то средство, которое существует только на этапе компиляции - как бы оказывается несуществующим вообще...


Т.е. циклы допустим тоже не существуют? Ведь на этапе исполнения их нет. Зато есть всеми горячо любымый goto. (aka jmp)

Переменных тоже нет, кстати. Зато есть регистры.

Имен переменных частенько тоже нет.

И строк нет.

На самом деле вопрос в том, насколько большой разрыв между целевым языком и языком исходным мы готовы терпеть. Целевой -- это машинный язык. Исходный -- это ЯВУ. Ясно что в ЯВУ есть то чего не будет после того как программу на ЯВУ оттранслируют в машинный язык. Иначе ЯВУ был бы ассемблером данной машины. Это конечно вполне возможно (были скажем процессора где ассемблером был Си), однако это не наш случай.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:38 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
В Обероне я имею в рантайме практически всю информацию из compile-time; а ещё - имею тот же самый компилятор, который могу задействовать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:40 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Илья Ермаков писал(а):
В Обероне я имею в рантайме практически всю информацию из compile-time; а ещё - имею тот же самый компилятор, который могу задействовать.

ОК. Как мне эту информацию из рантайма вытащить? Вот собрал я программу обероновскую посредством oo2c или xds, или pow, или Astrobe, и? Да, и где мне там найти компилятор. После того как мою программу пользователь поставил на машину.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:45 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Я про Блэкбокс. XDS и названные другие - это чисто компиляторы, с отбрасыванием обероновской идеи операционной среды.

В ББ у меня Meta, Kernel и DevCompiler, совершенно одинаково в любой момент от development-time до автономного run-time.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:46 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1693
Илья Ермаков писал(а):
В Обероне я имею в рантайме практически всю информацию из compile-time; а ещё - имею тот же самый компилятор, который могу задействовать.

А теперь, внимание! Я ЭТОГО В ТОМ КЛАССЕ ЖЕЛЕЗЯК, которые используются в наших подсистемах, НЕ ИМЕЮ! Системы - достаточно большие, но - не на столько, что бы метаинформацию хранить! Там нужно ещё столько в табличном представлении функций иметь и просто - алгоритмов во внутренних флэшах, что поддержка оберон-решений просто не прокатывает.
Я ещё не упомянул на "потери места" на код "почленной" и "поэлементной" инициализации, который так любят в оберон-системах... С точки зрения наших систем, тысячи строчек поэлементного присвоения значений элементам массива, вместо memcpy, - совершенно неприемлемая и ничем не оправданная потеря памяти!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:48 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Условия понятны.

Думаю, что у Вас они лучше (оборудование помощнее), чем у НПЦ АП, с Графит-Флоксом.

И для таких условий как раз лучшим представляется ещё больше развить идею обобщённого программирования - т.е. уйти к генерационным инструментам, САПР-ам, с высокоуровневыми описаниями, в гнёзда которых могут вставляться низкоуровневые инструкции, например. Что и сделано вот у НПЦ.

Понимаю, что у Вас ещё и "зоопарк" платформ, да. Там выбор С понятен. А раз хочется обобщать - то и ++.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самообман простоты.
СообщениеДобавлено: Среда, 16 Июнь, 2010 00:49 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Илья Ермаков писал(а):
Я про Блэкбокс. XDS и названные другие - это чисто компиляторы, с отбрасыванием обероновской идеи операционной среды.

В ББ у меня Meta, Kernel и DevCompiler, совершенно одинаково в любой момент от development-time до автономного run-time.


А я про Оберон, как про язык. И XDS это таки компилятора Оберона-2, как и все перечисленные мною (Astrobe -- это Oberon-07). А BB это вообще какой-то паскаль. Хоть и компонентный :-)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 18


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB