Re: Ещё насчёт выбора языка посоветуйте
От: · Великобритания  
Дата: 12.01.20 22:48
Оценка:
Здравствуйте, FDSC, Вы писали:

FDS> Есть ли язык программирования, в котором есть следующие фичи:

Да любой интерпретируемый или managed, например java

FDS> 1. Необходимо задавать невозможность вызова в модулях функций (запрет файлового ввод-вывода, например), исключая разрешённые модули

java.lang.SecurityManager

FDS> 2. Аналогичный запрет для всех функций, которые вызываются из данной функции

Запрет на уровне класса.

FDS> 3. Помечать код как неизменяющий состояние программы

Это как? Если у некоего кода нет доступа к некоему состоянию, то и изменить не может, доступа к приватным данным тоже нет (кроме как через публичные методы). Или иммутабельные объекты что-ли?

FDS> 4. Помечать объекты дополнительными типизационными метками (в статическом виде). Например, красная строка должна быть несовместима с зелёной строкой, но зелёная неявно приводима к красной.

А чем просто типы не устраивают? class RedString {private final String content;}

FDS> 5. Контролировать состояние объекта как конечного автомата, в идеале, в статике. Грубо говоря, объект не инициализирован, объект инициализирован, объект в работе, объект завершил работу, объект подвергся деструкции.

Сборщик мусора же. Объекта либо нет, либо к нему доступа нет и деструкторы не нужны.
Все остальные кастомные состояния контролируются кодом публичных методов.
avalon/2.0.6
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.