Nitra-C# и Nitra-Nemerle
От: VladD2 Российская Империя www.nemerle.org
Дата: 11.01.16 23:07
Оценка: 25 (3) +1
Приветствую всех.

Мы подошли к моменту когда на Nitra можно создать компиляторы (и, естественно, IDE-интеграцию) для расширяемого C# и Nemerle 2.0.

Точнее создать компиляторы можно для чего угодно, но особо хочется создать их именно для C# и новой версии Nemerle.

Работа предстоит не маленькая, так что хочется найти сподвижников в этом не легком деле.

Уверен, что в Nitra придется многое усовершенствовать, так что мы (разработчики ядра Nitra) видимо будем вынуждены уделять много времени именно Nitra. По сему нужны добровольцы которые будут писать код для Nemerle 2.0 и расширяемого C#.

Требования к добровольцам простые:
1. Опыт разработки по дотнет.
2. Знание (желание изучить) Nemerle 1.х.
3. Знание C#.
4. Желание изучить Nitra.
5. Пламенный мотор вместо сердца.

Какие задачи нужно решить...
По Nitra-C#:
1. Написать типизацию для выражений C#.
2. Написать часть .Net-бэкэнда отвечающую за генерацию кода и запись метаданных в дотнетные сборки.

По Nemerle 2.0 задача по сложнее, так как нужно еще написать парсер Nemerle на Nitra, типизацию для таких не простых выражений как паттерн-матчинг и воспроизвести базовые макросы Nitra 1.х в формате синтаксических расширений Nitra. В прочем, синтаксис верхнего уровня у Nemerle очень похож на шарповскский, так что можно будет использовать его за основу.

В принципе мы можем сделать даже один единый компилятор который будет понимать и синтаксис C#, и синтаксис Nemerle в одном файле. Но не уверен, что это хороший подход. Возможно достаточно будет иметь возможность содержать в одном проекте одновременно файлы Nemerle и Nitra-C# (это довольно просто).

Со своей стороны мы будем помогать и обучать. Естественно мы и сами будем заниматься этими проектами, но хотелось бы создать команду по больше.

В дальнейшем, если кому интересно, можно занятием создания бэкэнов позволяющих компилировать код под другие платформы (Java, LLVM). Реализовав бэкнды под эти платформы мы сможем автоматически портировать на них Nitra, C#, Nemerle и другие языки использующие символы дотнета.

Если кто-то хочет поучаствовать в этих проектах, пишите в ответ на это сообщение.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.