budden писал(а):
В своё время я спрашивал у Олега, где находится ниша применения Оберона для сверхмалых процессоров. Он ответил (если я правильно понял ответ), что для сверхмалых процессоров нужно писать на ассемблере, Оберон - слишком жирный. Т.е. какие-то самодостаточные, но мелкие игрушки. Если мы ужимаемся по объёму, то я выше уже описал, как лисп выигрывает здесь, т.к. он реально проще.
Есть простота машинная, это в сторону 0 и 1. Вот Вы сейчас про такую простоту. А есть, когда программы писать проще. Простота Лиспов именно машинная. И если уж речь зашла о Лиспах для сверхмалых процессоров, то они там никогда не имели и не будут иметь особого применения, поскольку Лисп-машина на них чудовищно неэффективна. Даже полученный с Оберона через трансляцию в Си машинный код будет намного лучше, ибо он будет нативным. Я как-то
поучаствовал в испанском конкурсе, где написал на моём диалекте Оберона (вернее, портировал)
игру Bolder Dash. Это работает на компьютере ZX Spectrum с 16 Кб ОЗУ (из которых 6 Кб это видеопамять). Объём игры (+ уровни, + графика, + звуки) около 9 Кб. Это динамическая игра, и повторить её на ретро-процессоре в таких объёмах с такой производительностью на любом Лиспе не представляется возможным.
На ретро-процессорах есть микро-Лиспы, но они урезанные по самое небалуйся и не годятся ни для чего практического.
budden писал(а):
В Обероне вообще я бы запретил неявные преобразования числовых типов, не потому, что без них можно обойтись, а потому что они снижают надёжность.
Они и так, в основном, запрещены. Про это подумал Вирт и ввёл FLT().
Comdiv писал(а):
А почему не в виде SET?
А зачем вообще нужна BITS() и перевод целых в битовое представление? Но раз нужно, значит нужно. И в константах тоже. Если не верите — спросите у Бориса

Например, в модуле N есть константа, значение которой в битовом представлении нужно в модуле M, тоже в виде константы.
P.S. Упрощение О7 не одобряю категорически. Сам бы я посягнул только на PACK/UNPK, да и то, их выпиливание погоды не сделает. Эти упрощения вообще экстремизмом попахивают. Вы практики, господа, или просто умозрительно идейничаете?
Как-то Антон Кротов написал несколько крупных программ на О7 для KolibriOS, включая
читалку книг в формате fb2. После полученного опыта у него есть заметки как раз не об упрощении, а об усложнении Оберона-07. Вот к этому я бы точно прислушался. Слово практика.
Сейчас поискал в инете этот его пост и не нашёл. Где-то был на форуме OberSpace. Будем считать утерянным, жаль.
Борис Рюмшин писал(а):
Встроенной BITS действительно не хватает. Обратное то преобразование через ORD есть.
Полностью согласен.