Язык "Nemerle" для Reflector
От: BOleg Россия  
Дата: 14.08.07 21:11
Оценка:
Привет всем.

Начал писать сабж.
Плагин нужен мне для преобразования одного довольно крупного проекта с C++/CLI на Nemerle (год назад проект успешно мигрировал с нативных плюсов на дотнет). Почему решили мигрировать таким хитрым способом — не спрашивайте.

В общем-то, преобразование AST в код Nemerle уже написано.
Сейчас занимаюсь модификацией дерева в "правильные" формы. Например, код на плюсах
TestClass test; //заметьте, это не "указатель"!!
System.Console.WriteLine("Any statement");

вместо (код на Nemerle)
using(def test:TestClass=TestClass())
{
   System.Console.WriteLine("Any statement");
}

распознается как (код на Nemerle)
mutable test : TestClass;
def class3 : TestClass = TestClass();
try
{
  test = class3;
  System.Console.WriteLine("Any statement");
}
fault  //это ваще непонятно что за фигня. Но она есть!
{
  test.Dispose();
}
test.Dispose();

Виноват не Reflector, а компилятор плюсов. Ещё много чего придётся обрабатывать.

Если заинтересует — буду выкладывать.

PS: язык разработки ессно Nemerle
В человечишке все должно быть прекрасненьким: и одёжка, и душенка, и мордочка, и мыслишки.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.