**** FREEWARE ****

                    ╔══════════════════════════════════╗
                    ║ Препроцессор русской лексики rcc ║
                    ╚══════════════════════════════════╝

   Разработчик Гурин Сергей Васильевич.
               Томский политехнический институт,
               кафедра электрических станций,
               раб. тел. 49-25-07
               Домашний адрес: 634057 г. Томск
                               ул. Говорова 48 кв 68

   Предлагаемый пакет  программ содержит  препроцессор русской  лексики для
компилятора  Турбо   Си  и   набор  различных   инструментальных   средств,
используемых  совместно  с   препроцессором.  Использование   препроцессора
позволяет программировать на ограниченном естественном русском языке. Сразу
отмечу, что использование русского  языка вместо английского, отражает  мой
способ мышления,  привычки и  опыт работы.  Поэтому, ни  в коем  случае, не
следует рассматривать этот инструмент  как альтернативу или как  конкурента
оригинальному  языку  Си.  Дело  в  том,  что  до  сих  пор мне приходилось
выполнять  разработку   достаточно  сложных   программных  проектов:    две
экспериментальные  операционные  системы,  несколько  текстовых редакторов,
метаассемблер, несколько  компиляторов и,  в настоящее  время - программная
модель многопроцессорной вычислительной системы, параллельной  операционной
системы и  компилятора языка  параллельного программирования.  В результате
опробования различных подходов к организации достаточно сложных программных
систем  я  пришел  к  выводу,  что  для  меня  наиболее  удовлетворительным
способом  проектирования  является  нисходящее (структурное) проектирование
сверху вниз (пошаговая детализация). При осознании этого факта я столкнулся
с тем,  что отсутствует  инструмент, позволяющий  реализовать или облегчить
этот подход. Основным в таком инструменте должна быть возможность  излагать
свои программистские мысли на языке программирования также естественно, как
они формулируются  в голове.  Использование английского  языка (несмотря на
достаточно  хорошее  его  знание)  все  время  ставило  преграду, о которую
спотыкалось  сознание,  вынуждаемое  сначала  перетранслировать  английское
понятие на русский язык а только затем его осмысливать.  Экспериментальный,
исследовательский   характер   выполняемых   проектов   предъявлял   особые
требования к гибкости и  модифицируемости, что влекло за  собой чрезвычайно
утомительное  комментирование  программ.  Поэтому  то  и  возникла  мысль о
создании  инструментального  средства,  которое  помогало  бы писать хорошо
структурированные   самодокументируемые   программы   методом   нисходящего
проектирования. Вначале препроцессор был реализован на микро-ЭВМ ДВК-3  (ОС
RT-11) и на СМ-1420 (ОС RSX-11M). Результаты более чем трехлетней работы  с
препроцессором убедили меня в правильности выбранного подхода.

     В  дополнение  к  исполняемому  файлу  препроцессора rcc.exe приведено
описание  -  файл  rcc.doc  и  включаемый  файл  настройки препроцессора на
русские ключевые слова - файл  include\rcc.h. В описании даны все  сведения
об использовании препроцессора и приведен пример проектирования: реализация
функции переноса русских  и английских слов,  которую можно использовать  в
редакторах или форматтерах текстов.

     Кроме препроцессора русской лексики я включил в предлагаемый пакет ряд
ряд дополнительных инструментальных и сервисных средств, делающих работу на
препроцессоре более комфортной и удобной:
  - модифицированный генератор  лексических  анализаторов  LEX,  в  который
    добавлена  возможность  использования  русской лексики. В файле lex.doc
    содержится  краткий  перевод руководства по языку LEX и пример - полный
    текст лексического анализатора препроцессора rcc
  - макросы  для языка Multi-Edit (я предпочитаю не пользоваться интегриро-
    ванной системой Турбо Си,  а работаю с более удобными и мощными средст-
    вами:  компилятором tcc, препроцессором cpp, построителем make, генера-
    торами lex и yacc, редактором текста Multi-Edit)
    - ведение словаря часто используемых слов и конструкций  (me_dict.src),
    - использование  стандартных  конструкций языка Си в нотации препроцес-
      сора rcc (rcc.src),
    - изменение регистра букв русского или английского  слова  (swreg.src),
    - штамп даты и времени (dat_tim.src),
    - используемые мной настройки Multi-Edit'а (init.mac, keymap.me)
  - вариант файла настройки драйвера клавиатуры KEYRUS

    Все предлагаемые средства содержат описания и комментарии, для макросов
me_dict и rcc написаны файлы интерактивных подсказок (.hlp) для  внутренней
базы данных Multi-Edit'а ACI Hypertext.
