====== Язык программирования Васик ====== Основная идея языка программирования Васик --- реализация компонентной архитектуры. В перспективе планируется реализация интерфейсов [[http://ru.wikipedia.org/wiki/CORBA | CORBA]] и [[http://ru.wikipedia.org/wiki/Component_Object_Model | COM]]. Синтаксис и семантика приближены к внутреннему языку системы [[http://ru.wikipedia.org/wiki/1%D0%A1:%D0%9F%D1%80%D0%B5%D0%B4%D0%BF%D1%80%D0%B8%D1%8F%D1%82%D0%B8%D0%B5 | 1С]]. Ближайшие аналоги - [[http://ru.wikipedia.org/wiki/Lua | Lua]] и [[http://ru.wikipedia.org/wiki/Javascript | JavaScript]]. К языку [[http://ru.wikipedia.org/wiki/Basic | Basic]] никакого отношения не имеет. Предполагается реализовать компилятор с Васика в [[http://www.digitalmars.com/d | язык Ди]]. Сам компилятор также написан на Ди. Синтаксический анализатор (парсер) реализован на основе генератора [[https://github.com/sergev/lemon-parser-generator | Lemon]]. Проект приостановлен. За последний год появились два аналогичных проекта, на основе языка JavaScript: * [[http://live.gnome.org/Seed | Seed]] * [[http://live.gnome.org/Gjs | Gjs]] ===== Тексты компилятора ===== Исходные тексты компилятора Васик доступны через Subversion с сайта [[https://github.com/sergev/vasic]]: git clone https://github.com/sergev/vasic.git ===== Текущее состояние проекта ===== * [[lang:vasic:scanner | Лексический анализатор]] --- готов. * [[lang:vasic:parser | Синтаксический анализатор]] --- частично. * [[lang:vasic:tree | Построение синтаксического дерева]] --- частично. ===== Ссылки ===== * [[http://www.rsdn.ru/article/dotnet/cs1c.xml | Технология создания COM+-компонента для 1С на C#]] * [[http://www.gotdotnet.ru/Forums/Common/397235.aspx | Внешняя компонента для 1С]]