Читать «Цифровой журнал «Компьютерра» № 24» онлайн - страница 65

Коллектив авторов

- Здесь система как таковая, к сожалению, ничего предоставить не сможет. У нас есть представление о том, как это можно сделать в рамках реализуемой объектной среды, но уже с некоторой потребностью от программиста предпринять некоторые усилия. Даже не столько усилия, сколько необходимость делать свои приложения некоторым определённым образом. Грубо говоря, если он использует немодифицируемые объекты и применяет функциональный стиль, то более или менее автоматом получается некая среда, в которой можно возвращаться к предыдущему состоянию. В этом месте мы не даём готового решения, но мы говорим, что если в нашей среде придерживаться определённых правил, это будет получаться дёшево и легко.

- Давайте теперь вернёмся к реальности. Какие короткосрочные перспективы стоят перед проектом?

- У нас сейчас достигнута ближайшая цель получить стабильно работающее ядро, в котором хорошо работают снэпшоты, в котором чётко отслеживается перезагрузка. Сейчас есть нормальное, хорошее ядро, разработку которого можно при желании и остановить, и это будет приемлемо. В ядре есть некоторое количество вещей, которые нужно обязательно доделать — они касаются некоторых тонкостей восстановления системы. В системе есть такие места, которые должны быть проинформированы о перезагрузке, и это место пока что не реализовано. Как только пройдём его, разработка ядра будет приторможена.

Следующая задача — сделать пользовательскую среду, для которой которой было бы удобно писать программы. То есть главная стоящая сейчас перед нами задача — сделать релиз, на котором средний программист мог бы уже что-нибудь написать. Строго говоря, этот релиз у нас уже есть, но человеку потребуются усилия на то, чтобы продраться через наши инструменты — способы склеивания кода, миграции, сборки. Не сказать, что они сделаны плохо — просто так, как того требовала текущая ситуация.

Ещё одна вещь, которая сейчас не готова — это графическая подсистема, которая на сегодня реализована только в ядре и почти никак не доведена до пользовательского уровня, и в ней не реализованы некоторые примитивы, которые необходимы в реальной жизни. К примеру, нет примитива, позволяющего подвинуть окно или изменить его размеры. Без этого в режиме демонстрации можно жить, но в реальной жизни хотелось бы, чтобы оно было. Вот такие вещи нужно отработать, и после этого мы бы хотели, чтобы у нас случился релиз, про который мы бы могли сказать «да, интересующийся разработчик может это взять, собрать, попробовать, запустить, написать под это какую-нибудь программку».

Для нас это важно не потому, что под «Фантом» начнут писать (всё же пока что довольно рано для этого), мы бы хотели выйти на каких-то заинтересованных разработчиков, чтобы получать отклик. Чтобы понимать, что в системе ещё сырое, что требует доработок, что неудобно или глупо сделано. И после этого следующий релиз мы бы хотели рассматривать как продакшен.

- Как я понимаю, есть и мысли о коммерческом применении?