Bargest писал(а):
Сравнение с Gentoo не верно. Gentoo - ОС. А на ЯВУ (в т.ч. на Канторе) разрабатываются прикладные приложения.
Нельзя просто так взять и добавить ООП на системный уровень, это неизбежно смещает акценты. Ведь если подумать, классические ОС построены на парадигме монолитов: монолитные программы, монолитные файлы, монолитные API и т. п. В этих условиях текст -- единственный монолитный формат, доступный для изменения человеком, поэтому всё идет через текст и человеческий разум. Человек -- самый гибкий компонент любой системы, я это помню.
Во фрактальной ОС нет монолитов. Она рекурсивна, поэтому нет четкой грани между языком и ОС. На первых порах функции ядра берет на себя сам Кантор, следя за наследованием, полиморфизмом и агрегацией через обратимый код. Я ведь эти функции
возложил на ядро ОС.
Даже не знаю, с чем еще сравнить можно... С сайтами? В PHP phar не прижился. А npm-пакеты где, в Node.JS? Они же вроде обратимы? Но всё равно всё человеком контролируются, а не средой. А в человечной системе от человека надо использовать гибкость. Человеку свойственно ошибаться, поэтому за пригнанностью компонентов друг к другу должна следить машина. Концепция СУБД, взятая мной за основу -- прекрасный пример гибкой и нерутинной работы с данными, которые нельзя охватить вручную.
Bargest писал(а):
Если Кантор будет также "популярен" в массах, как линукс, то малвара ему не грозит. А если все же будет подбираться по популярности к мейнстримовым языкам - стоит задуматься.
Всему свое время. Сейчас мы про исходники говорим, про их замену. А на будущее в Канторе запланированы СУБД-шные права доступа, раз уж код -- это БД. Право на использование, на изменение, на добавление, на наследование, на удаление и пр.
А совсем в будущем, когда будет своя кодогенерация, для машинного кода вообще хочу сделать плавающее соглашение о вызовах -- аналог ASLR на уровне регистров. То есть на архитетурах с большим количеством регистров (x64, ARM) из неключевых регистров, используемых обычно россыпью, генерируются все возможные комбинации, обозначаемые цифрами или буквами. Программа компилируется не под единственную платформу x64, а под x64 тип 5, например. С другими типами она двоично несовместима.
Я не очень люблю делиться далекими планами, чтобы не выглядеть болтуном, но тема такая, что пришлось.
Bargest писал(а):
Но касательно Кантора - можно же реализовать библиотеки на канторе, которые могут подгружаться только в канторовые программы, и работать уже с этой технологией. Да, неполноценно, не общесистемно, но все же лучше, чем ничего.
В Delphi так и сделано. Да, неполноценно, не общесистемно, но все же лучше, чем ничего.
Не оценили. А потом ушел в Microsoft и сделал системно.
Раз уж зашла речь о пакетах, думаю, не рассказать ли о проекции пространств имен на файлы и каталоги, то есть как файлы и каталоги исходников превращаются в пространства имен в среде Кантора. Тема выходит за рамки "Hello, world!", состоящего из одного файла, но закладывается в обратимый формат и будет реализовываться сразу после выхода первой альфы. Систему пространств я называю "как в играх" -- из игр ее взял.