Fixes
[opsoft.git] / silentbob / doc / FAQ_utf8
blobae994db1def0cb301ce4e72e96873ecf297f2bc1
1 UTF8
3 Q. Что с платформами ?
4 A. Пока только Linux/ix86. SilentBob в принципе не будет работать на Win и Mac OS.
5    Баги компиляции на других платформах, по-возможности, буду фиксить (жду баг-репортов).
7 Q. Почему SilentBob написан на Си++ ?
8 A. В SilentBob требуются конкретные модули, выполняющие конкретные вещи. Мне изначально не мог
9    потребоваться код, к примеру, для отправки письма президенту. А нужные модули уже написаны,
10    и реализация их на Си++ представляется самой рациональной.
12 Q. Использует ли SilentBob Yacc/Bison etc. ?
13 A. НЕТ. Та информация, которую выдают означенные программы, очень избыточна, и SilentBob все равно не сможет
14    ее обработать, ибо это все-таки не компилятор. Все проблемы, которые я решаю SilentBob'ом, обрабатываются
15    2-мя, 3-мя if'ами для каждого оператора кода и отслеживанием контекста.
17 Q. Что с Си++ ?
18 A. Вы можете выполнять все те же операции что и с Си, но некоторые проблемы здесь все-таки присутствуют.
19    Из серьезных - отсутствие поддержки template'ов.
21 Q. Какие проблемы существуют с добавлением функциональности/языков в SilentBob ?
22 A. Сразу хочу отметить, что проблемы эти _не связаны_ с тем, что я не использую Bison.
23    Программа SilentBob изначально писалась для работы с кодом, а это понятие довольно обширное. Однако я не 
24    вижу смысла реализовывать только функционал по созданию файла ./tags для других языков, ибо, к примеру,
25    программисту на Java скорее пригодится поиск нужного комментария.
27 Q. На сколько сложно добавить новую возможность в SilentBob ?
28 A. Если это язык, для которого в SilentBob уже написан препроцессор, добавление функциональности сводится
29    к копированию шаблонного плагина, вставки кода запуска нужного препроцессора (пара строчек) и кода
30    для итерации (пара if'ов). Это наглядно видно, к примеру, в plugins/plugin_perl.cxx (функция perl_make_ctags).
31    Если это язык, для которого ни один из предложенных препроцессоров не подходит, вы можете написать этот 
32    препроцессор, либо отправив мне "тонкий намек" в виде спецификации языка и пометкой SilentBob в теме.