В книге Object-Oriented Programming in Oberon-2, H. Mössenböck на 77-й странице написано, как имитировать дженерики на Oberon-2. Достаточно элегантно.
Но, получается, подход через параметризацию (как сейчас реализовано в AO) убирает оверхед на размещение обёрток для (любых) типов в куче. А для простых контейнеров (несортированные списки, стеки, очереди), так, реализация через параметризацию, прямо, напрашивается. Для них этот оверхед, в случае Oberon-2, просто бессмысленная растрата памяти в куче.
| ОС A2 | Модульные системы | Вики |
Но, получается, подход через параметризацию (как сейчас реализовано в AO) убирает оверхед на размещение обёрток для (любых) типов в куче. А для простых контейнеров (несортированные списки, стеки, очереди), так, реализация через параметризацию, прямо, напрашивается. Для них этот оверхед, в случае Oberon-2, просто бессмысленная растрата памяти в куче.
| ОС A2 | Модульные системы | Вики |
Отправной точкой возникновения "Системы с активными объектами" (AOS) можно считать два доклада на JMLC 1997: Linz, Austria
| ОС A2 | Модульные системы | Вики |
| ОС A2 | Модульные системы | Вики |
👏1
This media is not supported in your browser
VIEW IN TELEGRAM
Расскажи об этом на свидании, и тебя точно заблокируют 🤣
Ну, какова подача 🤣
Ну, какова подача 🤣
👏9❤4👍3
On the Criteria To Be Used in Decomposing Systems into Modules, D.L. Parnas, 1972
👍3
Частичный перевод
https://wiki.c2.com/?ModulaThree
про ... "искания и метания и только 40 рублей з/п" Ж-)
А впрочем -- в комментариях детальнее.
(Пришлось разбить на части из-за max объёма сообщения в Telegram.)
***
XYZ, несомненно, считается хорошим языком большинством людей, которые его используют. Однако для тех из нас, кому пришлось использовать его по выбору других, он оказался ужасно болезненным — особенно система указателей. Я помню, как спрашивал у людей, есть ли у них идеи, как сделать язык хуже, и единственными предложениями были номера строк и концепции, заимствованные из (...).
> Поскольку я им не пользовался, мне любопытно: что именно вызывало такую ужасную боль?
В моем (кратком и непрофессиональном) опыте работы с XYZ это было мучительно, главным образом из-за (...) и хуже всего — постоянное навязчивое ощущение, что на самом деле там ЕСТЬ чертовски хороший язык, скрывающийся под всеми этими раздражающими ограничениями типов и чрезмерно многословным синтаксисом, написанным ВСЕМ ЗАГЛАВНЫМИ БУКВАМИ.
***
https://wiki.c2.com/?ModulaThree
про ... "искания и метания и только 40 рублей з/п" Ж-)
А впрочем -- в комментариях детальнее.
(Пришлось разбить на части из-за max объёма сообщения в Telegram.)
***
XYZ, несомненно, считается хорошим языком большинством людей, которые его используют. Однако для тех из нас, кому пришлось использовать его по выбору других, он оказался ужасно болезненным — особенно система указателей. Я помню, как спрашивал у людей, есть ли у них идеи, как сделать язык хуже, и единственными предложениями были номера строк и концепции, заимствованные из (...).
> Поскольку я им не пользовался, мне любопытно: что именно вызывало такую ужасную боль?
В моем (кратком и непрофессиональном) опыте работы с XYZ это было мучительно, главным образом из-за (...) и хуже всего — постоянное навязчивое ощущение, что на самом деле там ЕСТЬ чертовски хороший язык, скрывающийся под всеми этими раздражающими ограничениями типов и чрезмерно многословным синтаксисом, написанным ВСЕМ ЗАГЛАВНЫМИ БУКВАМИ.
***
👍2
Oberon, gadgets and some archetypal aspects of persistent objects
Отчёт Юрга Гуткнехта 1996-го года, 25 страниц, с картинками
Отчёт Юрга Гуткнехта 1996-го года, 25 страниц, с картинками
👍3
Forwarded from BlackBox Oberon
Из рассылки по Оберону
Восстановлена работоспособность системы Ulm’s Oberon
https://github.com/norayr/ulmo
В версии 0.9 компилятор снова стал работать на современных Linux-системах и смог собирать программы, хотя оставался довольно медленным. В версии 0.10.0 была реализована сборка напрямую из файловой системы без использования прежних инструментов pons и cdbd, что значительно ускорило процесс компиляции. При этом старый способ сборки всё ещё поддерживается.
Компилятор способен автоматически определять зависимости между модулями и собирать проект по главному модулю, подобно тому как работает FreePascal. Он создаёт 32-битные бинарные файлы даже на 64-битных системах Linux и не требует libc, используя только системные вызовы ядра.
Восстановлена работоспособность системы Ulm’s Oberon
https://github.com/norayr/ulmo
В версии 0.9 компилятор снова стал работать на современных Linux-системах и смог собирать программы, хотя оставался довольно медленным. В версии 0.10.0 была реализована сборка напрямую из файловой системы без использования прежних инструментов pons и cdbd, что значительно ускорило процесс компиляции. При этом старый способ сборки всё ещё поддерживается.
Компилятор способен автоматически определять зависимости между модулями и собирать проект по главному модулю, подобно тому как работает FreePascal. Он создаёт 32-битные бинарные файлы даже на 64-битных системах Linux и не требует libc, используя только системные вызовы ядра.
GitHub
GitHub - norayr/ulmo
Contribute to norayr/ulmo development by creating an account on GitHub.
👍4
Как это было
Первые полосы европейских, американских и азиатских газет 13 апреля 1961 года.
Первые полосы европейских, американских и азиатских газет 13 апреля 1961 года.
👍6🔥1