OberonCore
https://forum.oberoncore.ru/

Алексей Недоря Разработка языка: OOP or not OOP or better OO
https://forum.oberoncore.ru/viewtopic.php?f=6&t=6524
Страница 1 из 2

Автор:  Дмитрий Дагаев [ Воскресенье, 29 Декабрь, 2019 10:12 ]
Заголовок сообщения:  Алексей Недоря Разработка языка: OOP or not OOP or better OO

ОТКРЫТАЯ КОНФЕРЕНЦИЯ ИСП РАН ИМ. В.П. ИВАННИКОВА
МОСКВА, 5-6 ДЕКАБРЯ 2019 Г.
https://www.isprasopen.ru/#Keynotes

Статья:
В рамках процесса совершенствования экосистемы разработки приложений для различных устройств Huawei компания работает над новым языком программирования. В статье рассматривается подход к реализации OOP в языке программирования, который рассматривается как движение в сторону компонентно-ориентированного программирования.
https://ispranproceedings.elpub.ru/jour/article/view/1215

Автор:  arlean1 [ Воскресенье, 29 Декабрь, 2019 12:46 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Полный текст статьи:
https://ispranproceedings.elpub.ru/jour/article/view/1215/986

Автор:  arlean1 [ Воскресенье, 29 Декабрь, 2019 12:59 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Цитата из статьи:
Цитата:
Как известно, языки, в которых объектно-ориентированность основана на классах (для
этого варианта OO будем использовать аббревиатуру CLOP – Class-Oriented Programming
[10]), критикуются (в том числе) за отсутствие гибкости и за проблемы разработки
повторно используемых компонент [11,12,13,14,15,16]. Приведем известную цитату Джо
Армстронга (Joe Armstrong), автора языка Erlang:

(далее в переводе)
Я думаю, что отсутствие возможности повторного использования происходит в объектно-ориентированных языках, а не в функциональных языках. Потому что проблема с объектно-ориентированными языками заключается в том, что у них есть вся эта неявная среда, которую они носят с собой. Вы хотели банан, но то, что вы получили, было горилла, держащая банан, и все джунгли.
Цитата из статьи:
Цитата:
Источником проблемы является наследование реализации. Как мы видим, ОО языки
нового поколения отказываются от классов и от наследования реализации. И, тем самым,
позволяют избавиться или сделать менее острой проблему добавления горилл и джунглей
к банану.

Понимая это, мы можем сделать первый шаг к определению OOP в новом языке – это
отказ от CLOP и от наследования реализаций.
Второй шаг следует из понимания того, что возможность повторного использования
компонентов (compile once, use everywhere) для разных устройств существенно
увеличивает эффективность COP. Частным следствием этого понимания, является
требование расширения объектов (добавления методов) без необходимости внесения
изменений в исходный код и с минимизацией перекомпиляции.

Автор:  Info21 [ Суббота, 04 Январь, 2020 12:00 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Неостановимая импульсация из продолговатого мозга, субъективно ощущаемая как "в <...> свербит и <...> чешутся", а объективно как "утопить в Байкале".

Автор:  arlean1 [ Воскресенье, 05 Январь, 2020 12:57 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Info21 писал(а):
... а объективно как "утопить в Байкале".

По сути, идёт речь не о прямом отказе от ООП, а о правильном использовании этого подхода. Вначале предлагается подход к классификации:
Цитата:
Принципиальной чертой нового языка мы видим средства компонентно-
ориентированного программирования (COP – Component-Oriented Programming) [1], под
которым мы понимаем возможность сборки (существенной части) программы из готовых
компонент. Одним из шагов в направлении COP является, с нашей точки зрения,
правильный выбор средств OOP.
2. Подход к OOP
В текущей работе мы не рассматриваем COP напрямую, сосредоточившись на OO
парадигме. Заметим, что в настоящее время, ситуация с ОО парадигмой весьма
запутанная
. По сути, в IT сообществе отсутствует общее понимание того, что такое OOP.
Достаточно отметить, что OOP в языках Go [2, 3] и Rust [4,5] принципиально отличается
от OOP в языках С++ и Java. Если добавить к списку языков Lua [6,7] и EO (Elegant
Objects) [8,9], мы увидим, что словом OOP называются существенно разные и часто
противоположные подходы. Для иллюстрации приведем сравнительную таблицу
конструкций языков (табл. 1):

и целью разработчиков нового языка в том числе является:
Цитата:
Принципиальной частью экосистемы должна быть унифицированная, дружелюбная к
разработчикам среда разработки, обеспечивающая разработку мульти-платформенных
приложений и высокий уровень повторного использования.

Автор:  arlean1 [ Воскресенье, 05 Январь, 2020 13:16 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Автор статьи Алексей Недоря, наверное, знаком кому-то из сообщества. Информация может быть полезна ещё тем, что можно попробовать как-то законтактироваться с ним по поводу возможной интеграции Оберона и нового языка, в разработке которого он принимает участие. Это было бы полезно для всех.

фото: автор статьи Алексей Недоря (слева)
и Никлаус Вирт (в центре).
https://www.osp.ru/FileStorage/ARTICLE/DGL/2014-02/02_12/13156054/DGL_Virt,_%D0%9Dedorya,_Politehnicheskij,_2005_(1971).jpg

P.S. Алексей Евгеньевич Недоря, к.ф.-м.н., Huawei Russian Research Institute

https://career.huawei.ru/rri/
там сейчас идут работы в т.ч. включая "новый язык(!)":
Цитата:
Разработка операционных систем и средств разработки нового поколения для массовых пользовательских устройств
Корневые алгоритмы и компоненты операционных систем, разработка компиляторов (C/C++/Java/Kotlin/новый язык(!)), вирутальных машин, JIT-оптимизаций, продвинутых профилировщиков и отладчиков, технологий оптимизации на стыке аппаратуры и софта, систем верификации.

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

Автор:  Info21 [ Воскресенье, 05 Январь, 2020 16:01 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

С Н.Виртом тогда (в 2005) фотались все, кому не лень.

"топить ..." не опровергнуто.

Автор:  arlean1 [ Понедельник, 06 Январь, 2020 01:11 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Info21 писал(а):
"топить ..." не опровергнуто.

так он же не один:
Цитата:
"Почему провалилось ООП?"

https://beobaxter.livejournal.com/1184360.html

Автор:  Trurl [ Понедельник, 06 Январь, 2020 10:20 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

arlean1 писал(а):
Автор статьи Алексей Недоря, наверное, знаком кому-то из сообщества.

Ну, про XDS все слышали. А некоторые ещё Mithril помнят.

Автор:  Info21 [ Понедельник, 06 Январь, 2020 16:27 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

arlean1 писал(а):
Info21 писал(а):
"топить ..." не опровергнуто.

так он же не один:
Цитата:
"Почему провалилось ООП?"

https://beobaxter.livejournal.com/1184360.html
Вот всех и топить.

Автор:  Валерий Лаптев [ Понедельник, 06 Январь, 2020 16:48 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

arlean1 писал(а):
Автор статьи Алексей Недоря, наверное, знаком кому-то из сообщества.

В Орле познакомились и слушали его доклад.

Автор:  arlean1 [ Вторник, 07 Январь, 2020 14:04 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Trurl писал(а):
arlean1 писал(а):
Автор статьи Алексей Недоря, наверное, знаком кому-то из сообщества.

Ну, про XDS все слышали. А некоторые ещё Mithril помнят.

Валерий Лаптев писал(а):
В Орле познакомились и слушали его доклад.

Привет всем! С празниками!
Так кто может и захочет с ним связаться по поводу интеграции с Обероном?

Вообще, похоже, что их платформа - дело перспективное, для продвижения Оберона.

Автор:  Rifat [ Вторник, 07 Январь, 2020 16:08 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Я думаю это малореально. У них немного другая цель. Как я понял их цель - это сделать программирование приятным и веселым.

Автор:  Илья Ермаков [ Вторник, 07 Январь, 2020 21:24 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

arlean1 писал(а):
Info21 писал(а):
"топить ..." не опровергнуто.

так он же не один:
Цитата:
"Почему провалилось ООП?"

https://beobaxter.livejournal.com/1184360.html


Там в комментах хороший анекдот в тему:

Цитата:
> в "борьбе со сложностью программистского бытия"
Реально со сложностью положение такое же как в анекдоте:
- Давно вы страдаете эротическими галлюцинациями ?
- что вы, доктор, я не страдаю, я имим наслаждаюсь !

Автор:  arlean1 [ Пятница, 10 Январь, 2020 01:02 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Rifat писал(а):
Я думаю это малореально. У них немного другая цель. Как я понял их цель - это сделать программирование приятным и веселым.

Главное - это интеграция с Обероном, если они согласятся.

а "Приятным и Весёлым" - это часто надстройка, например, типа Domain-specific language (DSL).
"Черепашка" в школьных примерах не слишком продвинутый пример, но всё же, это тоже DSL.

Автор:  Trurl [ Пятница, 10 Январь, 2020 08:22 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Приятным и веселым - это же лучше, чем противным и скучным.

Автор:  hothing [ Четверг, 09 Апрель, 2020 21:15 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Info21 писал(а):
Вот всех и топить.

Ничего не понял. Можно чуть подробнее почему?
Ну мне "классы" и наследование не нравятся, намного больше нравиться подход в Хаскеле (typeclass).

(Да Вы уже 10^n раз высказывались, но все как-то урывками и размазано.)

Автор:  Info21 [ Пятница, 10 Апрель, 2020 00:23 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

hothing писал(а):
Info21 писал(а):
Вот всех и топить.
Ничего не понял. Можно чуть подробнее почему?
Почему топить? Ещё подробнее?

Автор:  hothing [ Пятница, 10 Апрель, 2020 11:48 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

Info21 писал(а):
hothing писал(а):
Info21 писал(а):
Вот всех и топить.
Ничего не понял. Можно чуть подробнее почему?
Почему топить? Ещё подробнее?
Да. Мне интересна Ваша аргументация, а лозунги для другого хороши.

Автор:  Info21 [ Пятница, 10 Апрель, 2020 12:36 ]
Заголовок сообщения:  Re: Алексей Недоря Разработка языка: OOP or not OOP or bette

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

Вот наш Дмитрий Викторович своим МультиОбероном прилагает вектор в правильном направлении. Назад к основаниям, а не вперёд к ещё большему нагромождению.

Страница 1 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/