Информация об изменениях

Сообщение [Nitra] Отчет от 09.01.2016 от 09.01.2016 23:40

Изменено 11.01.2016 10:33 VladD2

На сегодня сделали:
1. Библиотечную поддержку унификации и вывода типа на его основе. Она довольно не плохо вписалась в язык зависимых свойств (по сути реализована на базе них). Это позволяет реализовать вывод типов в языках типа C#. Возможно его (с небольшим допиливанием) хватит и для того чтобы поднять вывод типов Nemerle.

2. Реализована специализация для новой подсистемы символов и AST-а.

3. Начал реализовывать бэкэнд на основе CCI Metadata. Реализовал загрузку Nitra-символов для дотнета на базе CCI. Есть мелкие недоработки (например, пока не грузятся значения пользовательских атрибутов), но в целом работает. Например, в нашем C#-е можно ссылаться на символы из внешних сборок.

4. Описание AST и символов для .Net-языков выделили в отдельную библиотеку (DotNetLang. Это позволяет существенно упростить создание разных языков для дотнета, но (что намного важнее) использовать в своих мини-языках символы дотнета. Например, если мы хотим сделать человекочитаемый синтаксис для XAML-а, то типы символы описывающие контролы будут доступны из коробки — DotNetLang.dll, а их загрузка из другой коробки — DotNet.BackEnd.CCI.dll.

Тест демонстрирующий ссылку на символ описывающий тип System.IO.FileInfo расположенный в mscorlib.dll:
На сегодня сделали:
1. Библиотечную поддержку унификации и вывода типа на его основе. Она довольно не плохо вписалась в язык зависимых свойств (по сути реализована на базе них). Это позволяет реализовать вывод типов в языках типа C#. Возможно его (с небольшим допиливанием) хватит и для того чтобы поднять вывод типов Nemerle.

2. Реализована специализация для новой подсистемы символов и AST-а.

3. Начал реализовывать бэкэнд на основе CCI Metadata. Реализовал загрузку Nitra-символов для дотнета на базе CCI. Есть мелкие недоработки (например, пока не грузятся значения пользовательских атрибутов), но в целом работает. Например, в нашем C#-е можно ссылаться на символы из внешних сборок.

4. Описание AST и символов для .Net-языков выделили в отдельную библиотеку (DotNetLang. Это позволяет существенно упростить создание разных языков для дотнета, но (что намного важнее) использовать в своих мини-языках символы дотнета. Например, если мы хотим сделать человекочитаемый синтаксис для XAML-а, то типы символы описывающие контролы будут доступны из коробки — DotNetLang.dll, а их загрузка из другой коробки — DotNet.BackEnd.CCI.dll.

Тест демонстрирующий ссылку на символ описывающий тип System.IO.FileInfo расположенный в mscorlib.dll: