[Nitra] Отчет от 09.01.2016
От: VladD2 Российская Империя www.nemerle.org
Дата: 09.01.16 23:40
Оценка: 22 (3)
На сегодня сделали:
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:
http://files.rsdn.org/73/Nitra-external-symbols.png
http://nemerle.org/Banners/?g=dark
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Отредактировано 11.01.2016 10:35 VladD2 . Предыдущая версия . Еще …
Отредактировано 11.01.2016 10:33 VladD2 . Предыдущая версия .
Отредактировано 11.01.2016 10:31 VladD2 . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.