Пока статическая линковка всех модулей.
Но эта статически собранная программа может загружать динамические модули, то есть можно написать некий стартер, которому в качестве параметров передавать команды для запуска приложений.
Но лучше использовать UnixAos полностью
Сборщик мусора реального времени есть для среды времени выполнения Активного Оберона ( в варианте реализации этой среды в ОС A2, в которой есть подсистема реального времени ) и для классического Оберона в реализации XOberon — ОСРВ на базе Oberon System
Для функционирования программ на Активном Обероне достаточно использовать среду времени выполнения (RTL):
Trace.Mod — Low-level trace output based on KernelLog
*.Machine.Mod — Bootstrapping, configuration and machine interface
Heaps.Mod — Heap management and garbage collector
Modules.Mod — Modules and types
Objects.Mod — Active object runtime support
Kernel.Mod — Implementation-independent kernel interface
Использовать АО(Активный Оберон) на ОС, отличных от A2, можно посредством вариантов A2, работающих поверх Windows, Unix/Linux/Darwin — там вся A2, за исключением железа, но работают и сетевые протоколы и сервисы и медиа. Можно собрать консольную программу, оставив рантайм и свой код.
Из других Оберонов под Линукс можно использовать OO2C или XDS
Здесь следует учитывать несколько факторов.
Имена переменных в Обероне — не «бесплатны» — они хранятся в объектных файлах и используются например в трапах, где выводятся стек вызовов и значения и имена локальных переменных и аргументов.
Так что это может использоваться, в том числе, и для отладки, ибо вся информация есть.
Во вторых, следует учитывать железо, на котором Вирт начинал программировать, его ограничение по памяти и и.п., кроме того дедушка Вирт явно увлекается ассемблером, что ествественно накладывает отпечаток на код.
К слову, ровно такой код я видел в программах на других языках.
Что касается проверки указателя, то подозреваю, что там никогда не может быть NIL
Но эта статически собранная программа может загружать динамические модули, то есть можно написать некий стартер, которому в качестве параметров передавать команды для запуска приложений.
Но лучше использовать UnixAos полностью
Для функционирования программ на Активном Обероне достаточно использовать среду времени выполнения (RTL):
Trace.Mod — Low-level trace output based on KernelLog
*.Machine.Mod — Bootstrapping, configuration and machine interface
Heaps.Mod — Heap management and garbage collector
Modules.Mod — Modules and types
Objects.Mod — Active object runtime support
Kernel.Mod — Implementation-independent kernel interface
Использовать АО(Активный Оберон) на ОС, отличных от A2, можно посредством вариантов A2, работающих поверх Windows, Unix/Linux/Darwin — там вся A2, за исключением железа, но работают и сетевые протоколы и сервисы и медиа. Можно собрать консольную программу, оставив рантайм и свой код.
Из других Оберонов под Линукс можно использовать OO2C или XDS
Имена переменных в Обероне — не «бесплатны» — они хранятся в объектных файлах и используются например в трапах, где выводятся стек вызовов и значения и имена локальных переменных и аргументов.
Так что это может использоваться, в том числе, и для отладки, ибо вся информация есть.
Во вторых, следует учитывать железо, на котором Вирт начинал программировать, его ограничение по памяти и и.п., кроме того дедушка Вирт явно увлекается ассемблером, что ествественно накладывает отпечаток на код.
К слову, ровно такой код я видел в программах на других языках.
Что касается проверки указателя, то подозреваю, что там никогда не может быть NIL