OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 19 Март, 2024 09:00

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




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Оберон и GNU Octave в образовании
СообщениеДобавлено: Пятница, 11 Июнь, 2021 14:20 

Зарегистрирован: Среда, 01 Август, 2007 00:13
Сообщения: 162
Приходилось иметь дело и с GNU Octave, и с MATLAB. В основном для реализации разных численных методов и задач нелинейной оптимизации. Язык GNU Octave регулярно использую в преподавании регрессионного анализа. Ради интереса (чтобы оценить, насколько Оберон пригоден для замены GNU Octave) реализовал в нём метод Левенберга-Марквардта, робастную регрессию и квантили распределения Стьюдента. Пришёл к выводу, что по сравнению с GNU Octave ему не хватает ряда серьёзных вещей:

1) Стандартизации языка: есть и Blackbox, и Oxford Oberon Compiler (пользовался в основном ним), и FreeOberon, и много чего ещё. При этом в разных вариантах Оберона (Oberon, Oberon-2, Oberon-07) сильно различается поддержка таких вещей, как динамические массивы. Также бывает разнобой с именами функций в математической библиотеке. А они очень нужны. Бывает даже разный размер типа REAL, что важно для численных методов. В этом плане GNU Octave и MATLAB куда более единообразны. О C и нечего говорить, там почти всё стандартизовано, но "тащить" его в преподавание математики непрограммистам лучше не надо.
2) Готовых библиотек численных методов. Если не прав - поправьте меня. А то сейчас для того, чтобы описать точки полиномом, нужно сначала реализовать как минимум метод Гаусса или разложение Халецкого. Это особенно удивило, т.к. язык вроде бы позиционируется как хороший для образования и науки.
3) Кросс-платформенных библиотек визуализации научной графики: сейчас студенты могут использовать и Mac OS, и GNU/Linux.

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

В GNU Octave ещё удобна интерпретируемость, возможность перегружать операторы и лаконично объявлять матрицы, но это уже не так критично. Особенно с учётом того, что компиляторы Оберона очень быстрые, что позволит обойтись без интерпретации.

P.S. Есть ли где-то подборка литературы, модулей и пособий для использовании Оберонов именно для численных методов и матстатистики?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон и GNU Octave в образовании
СообщениеДобавлено: Пятница, 11 Июнь, 2021 15:48 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
На счёт п. 2 посмотрите http://zinnamturm.eu/ там были какие-то библиотеки математические. Иван Андреевич ближе к этому вопросу, может что-то ещё присоветует. Также у него, кстати, была отличная библиотека двумерных графиков.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон и GNU Octave в образовании
СообщениеДобавлено: Пятница, 11 Июнь, 2021 21:50 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3774
На том уровне, как вы хотите, вам лучше использовать Компонентный Паскаль. Больше выбор расширений, больше возможностей для графического представления результатов.

Главным образом математические библиотеки развивает Роберт Кэмпбелл: http://zinnamturm.eu/authors.htm#Cam

Сам разрабатывал и планирую в скором времени обновить систему для отображения графиков:
https://blackbox.oberon.org/extension/Dia

В Компонентном Паскале есть стандарт. Этот язык уже 20 лет не меняется помимо добавления поддержки юникодных идентификаторов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон и GNU Octave в образовании
СообщениеДобавлено: Пятница, 11 Июнь, 2021 21:56 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3774
Оберон (последняя версия — Оберон-07) может быть полезен для систем с более ограниченными ресурсами железа (к примеру, компилятор O7 Александра Ширяева), или требованиями к простоте компилятора (например, онлайн компилятор Оберона от Владислава Фольца). Для преподавания простых алгоритмов обычной информатики и программирования вполне подходит и простой Оберон, как онлайн (OberonJS), так и на ПК (компилятор Восток, МультиОберон, Ofront+).

А вот для сложной математики, разных динамических вещей и символьных вычислений — Компонентный Паскаль получше. В Блэкбоксе или через МультиОберон.

Оберон-2 — это уже скорее, если есть большое желание использовать конкретные компиляторы типа VOC, XDS или Ofront+.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон и GNU Octave в образовании
СообщениеДобавлено: Пятница, 11 Июнь, 2021 23:30 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 518
Откуда: Украина, Днепропетровская обл.
Раз зашёл разговор про Ofront+, вставлю и свои пять копеек: он тоже поддерживает Компонентный Паскаль — всё, кроме двухбайтового типа CHAR. Пока что так.

Также подумываю о поддержке математического расширения Oberon-X.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон и GNU Octave в образовании
СообщениеДобавлено: Суббота, 12 Июнь, 2021 00:48 

Зарегистрирован: Среда, 01 Август, 2007 00:13
Сообщения: 162
Oleg N. Cher писал(а):
Также подумываю о поддержке математического расширения Oberon-X.

Перегрузка операторов чем-то смахивает на подход из Julia с множественной диспетчеризацией.

Иван Денисов писал(а):
Главным образом математические библиотеки развивает Роберт Кэмпбелл:

Спасибо за ссылки, среди представленных там библиотек наиболее близка к изначальной теме Datafit, там действительно есть реализация нелинейного МНК. Какой именно алгоритм они используют - не ясно. Наверное, Нелдера-Мида. Сама библиотека немного загадочная, с идентификаторами в коде почти без комментариев на неизвестном языке.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон и GNU Octave в образовании
СообщениеДобавлено: Суббота, 12 Июнь, 2021 08:07 

Зарегистрирован: Пятница, 11 Январь, 2019 19:26
Сообщения: 293
Откуда: Russia
Безусловно, Активный Оберон будет лучшим выбором для этого.
Перегрузка операций, математические и тензорные массивы ( включая литералы ), автовывод типов и другие свойства языка облегчат реализацию необходимых компонентов.
В А2 интегрирована в качестве приложения ос ETH Oberon, для которой реализован каркас AntsInFilelds.
Так же в репозитории присутствует каркасы CAPO (Computational Analysis Platform for Oberon), OCTK(Oberon Computational Toolkit), Matrix(Linear Algebra and Planar/Volumetric Signal Processing Modules и т.д. ).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон и GNU Octave в образовании
СообщениеДобавлено: Четверг, 17 Июнь, 2021 19:46 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3774
ScrollLock писал(а):
Иван Денисов писал(а):
Главным образом математические библиотеки развивает Роберт Кэмпбелл:

Спасибо за ссылки, среди представленных там библиотек наиболее близка к изначальной теме Datafit, там действительно есть реализация нелинейного МНК. Какой именно алгоритм они используют - не ясно. Наверное, Нелдера-Мида. Сама библиотека немного загадочная, с идентификаторами в коде почти без комментариев на неизвестном языке.

Автор — француз, похоже, так что идентификаторы на своём языке, наверное, назвал :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон и GNU Octave в образовании
СообщениеДобавлено: Среда, 30 Июнь, 2021 02:42 

Зарегистрирован: Среда, 01 Август, 2007 00:13
Сообщения: 162
Sergej Durmanov писал(а):
Безусловно, Активный Оберон будет лучшим выбором для этого.
Перегрузка операций, математические и тензорные массивы ( включая литералы ), автовывод типов и другие свойства языка облегчат реализацию необходимых компонентов.
В А2 интегрирована в качестве приложения ос ETH Oberon, для которой реализован каркас AntsInFilelds.
Так же в репозитории присутствует каркасы CAPO (Computational Analysis Platform for Oberon), OCTK(Oberon Computational Toolkit), Matrix(Linear Algebra and Planar/Volumetric Signal Processing Modules и т.д. ).

А Zonnon - производное от Активного Оберона или нет?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон и GNU Octave в образовании
СообщениеДобавлено: Среда, 30 Июнь, 2021 10:34 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
ScrollLock писал(а):
А Zonnon - производное от Активного Оберона или нет?


Ну идеологически он отталкивается от AO, да.
А так это был авторский проект Зуева в MS Research, там много его изменений относительно "привычного для Оберонов".
Были интересные средства типа грамматик на протоколы обмена вызовами (последовательность вызовов методов).


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

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


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

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


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

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