Google Summer of Code project: R backend for Cantor improvements

В этом году я принимаю участие в программе Google Summer of Code. Проект, над которым я буду заниматься — улучшение поддержки языка R в математической среде Cantor, авторства Александра Ридера. Проект включает в себя как рядовые исправления, нацеленные на то, чтобы уравнять функционал языков среды, так и весьма амбициозные идеи улучшения среды как такой, что позволит превратить Cantor в серьезную и привлекательную платформу для R-программистов. Итак, основной план улучшений по порядку:

  • Подсветка синтаксиса и tab-дополнение — очевидное удобство многих сред в Cantor для R пока не реализовано до конца. В рамках проекта планируется реализовать полную поддержку подсветки синтаксиса, выделения синтаксических ошибок, подстановку символов из текущего окружения, доступных команд и т.д.;
  • Навигатор окружения. Рабочая среда в R представлена окружением, состоящим из пользовательских обьектов. Планируется создать удобную графическую панель для навигации пользователя по имеющимся объектам окружения, их аннотации, подстановки в рабочий лист;
  • Мастер построения графиков. Графики в R крайне изысканы, с огромным количеством настраиваемых возможностей и способов отображения. Будет разработан мастер, призваный помочь новичку(а то и ленивому профессионалу), скомпоновать команду построения графика, подрегулировать уже записанную команду, просмотреть код сгенерированый мастером;
  • Интеграция CRAN в систему управления пакетами. Многие репозитарии Linux—систем позволяют работать с CRAN-репозиторием лишь косвенно, перепаковывая R-пакеты самостоятельно в «родной» формат системы. Данная схема не всегда удобна как для конечного пользователя, который таким образом ограничивается в доступе к CRAN, так и для команды поддержки операционной системы, которая занимается «двойной работой». Поэтому, в рамках програмы, будет реализована экспериментальная поддержка CRAN напрямую в каркасе PackageKit, что позволит через пользователю менеджер пакетов взаимодействовать с CRAN напрямую;
  • «Красивое» отображение таблиц. В данный момент, таблицы отобажаются в Cantor так же, как и в консольном интерфейсе R — в псевдографическом формате. Естественно, конечный пользователь ожидает более визуально приятной картины от графического интерфейса Cantor. В планах — улучшение внешнего вида таблиц, их представление в виде прорисованных HTML-таблиц, с возможностью стилизации через CSS. Таблицы в работе с R отображаются очень часто, и это изменение заложит первый камень в серию других изменений способа отображения результатов выполнения листа, уже вне GSoC;
Кроме того, планируется усовершенствование архитектуры представления рабочего листа в Cantor, что позволит обойти некоторые технические ограничения в способе отображения результатов выполнения команд листа. В частности, это позволит создать интерактивные и самостоятельные отображающие элементы, такие как таблицы с сортировкой и поиском, графики с повышенной информационностью и многие другие.

В своем блоге я буду регулярно извещать о прогрессе работ над этим захватывающим проектом.

← English translation Page 2 of 2
09:40 PM | Comments | Tags: , , , ,
blog comments powered by Disqus