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

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

- Эта непохожесть «Фантома» на другие среды означает, что старые компоненты систем Unix нельзя будет использовать? X Window, к примеру, или OpenGL.

- Вовсе нет. OpenGL у нас даже в каком-то виде сейчас есть в системе. В довольно сыром, правда.

- И это не собственная реализация, а оригинальный код, скомпилированный под «Фантом»?

- Да. Здесь есть две стороны жизни: есть объектная персистентная среда, которую «Фантом» предлагает в качестве родной. Под неё мы собираемся построить способ миграции, который позволил бы втаскивать на неё код, написанный на современных языках — на Java, Python, C#. Это очень большой объём кода, и он, на самом деле, превосходит то, что сделано для Unix. Мы считаем, что это основное направление, в котором нужно двигаться. Конечно же, мы не хотим сделать систему, для которой всё придётся писать заново. Это не оставило бы мне абсолютно никаких шансов.

С Unix ситуация вот какая. Изначально вообще не планировалось поддерживать юниксовый код, потому что родная среда «Фантома» не позволяет поддерживать старые языки программирования — такие как C и Pascal. Есть очень чёткое разделение: есть managed языки и не-managed языки. Managed-языки мы напрямую не поддерживаем. Это совершенно не проблема для современной разработки, потому что сейчас всё делается уже на managed-языках. Но есть довольно большое количество старого кода, написанного на C, на Pascal, на C++.

Изначально я предполагал, что им не нужно заниматься, ещё и потому, что за то время, которое мы будем делать стабильную версию «Фантома», мир ещё раз шагнёт вперёд, и всё старое наследние окажется совершенно неактуальным. Тем не менее, в сегодняшней стадии в «Фантоме» делается Unix-подсистема, которая позволит запускать под ним более или менее немодифицированный Unix-код, хотя X Window мы, наверное, не будем туда затаскивать.

- То есть будет собственная оконная система?

- Да. Она уже в какой-то степени есть, и не так уж много кода X Window, который было бы интересно в неё тащить. А делать X Window — это довольно серьёзная задача, которая, я боюсь, не окупится. Ну и, кроме того, есть довольно много кода, написанного под вещи типа SVGALib, который вполне можно портировать под «Фантом». То есть framebuffer и прочие инструменты обмена мы сделаем.

- Но программы, написанные под X Window, придётся модифицировать?

- Придётся модифицировать, да. В текущей ситуации мы не видим достаточной необходимости делать эту часть работы. Мы больше ждём, что программы, написанные за последнее время будут реализованы скорее для Java SWING, чем для X Window.