Здравствуйте, Cyberax, Вы писали:
C>Тут скорее нужен фронтенд для всего CLR IL.
Скорее наоборот. Для IL нужен бэкэнд.
C> До недавнего времени это
C>было невозможно, так как GCC в процессе компиляции терял информацию о
C>типах. Примерно год назад стало возможным сохранять информацию о типах,
C>так что компилятор CLR->native, в теории, возможен.
Я же говорю в ваших рассуждениях каша.
Почему вообще возможность компиляции IL в нэйтив-код вообще должна касаться GCC?
IL давно компилируется в нэйтивный код разными способами (Борток, Феникс, утилиты третьих фирм).
C>На практике, в багтрекере Mono до сих пор висит task "Исследовать
C>возможность использования GCC".
Видимо из-за отсуствия особой необходимости.
C>Runtime — это GC и библиотеки языковой поддержки. Boehm GC работает без
C>проблем практически со всем, что только существует. Библиотеки языковой
C>поддержки действительно придется переписать.
Языком все работает. А на практике хрена два ты сможешь осилить все что нужно.
Boehm GC твой — это детский лепет по сравнению с тем, что реально нужно сделать.
А "библиотеки" это только звучит так коротко. А на практике среди библиотек должны быть такие вещи как System.Reflection. И GCC с их реализацией никак не поможет.
>> Да и библиотеки тоже фактор не маловажный.
C>Скомпилировать в нативный код библиотеки Mono
Языком все просто. На практике тот же Барток сильно урезает функциональность. А Феникс не живет без дотнета.
В общем, если бы это было просто, и действительно нужно, то давно было бы сделано.
... << RSDN@Home 1.2.0 alpha rev. 637>>
VladD2 wrote:
> C>Тут скорее нужен фронтенд для всего CLR IL.
> Скорее наоборот. Для IL нужен бэкэнд.
А зачем? На семантику IL обычные языки ложаться очень плохо.
А вот получить компилятор из IL в машинные коды примерно 40 платформ —
это гораздо интереснее.
> Почему вообще возможность компиляции IL в нэйтив-код вообще должна
> касаться GCC?
В IL можно и без GCC нормально скомпилировать. То есть если для того,
чтобы сделать Native Nemerle достаточно будет просто собрать компилятор
IL2Native.
> C>На практике, в багтрекере Mono до сих пор висит task "Исследовать
> C>возможность использования GCC".
> Видимо из-за отсуствия особой необходимости.
Таск большой и сложный, некому заняться.
> Языком все работает. А на практике хрена два ты сможешь осилить все что
> нужно.
> Boehm GC твой — это детский лепет по сравнению с тем, что реально нужно
> сделать.
Ага, Mono — отстой.
> А "библиотеки" это только звучит так коротко. А на практике среди
> библиотек должны быть такие вещи как System.Reflection. И GCC с их
> реализацией никак не поможет.
Поможет. GCC может писать информацию о типах в любом виде (например, в
XML), так что собрать reflection-package можно без особых проблем.
В GCC-XML это даже для С++ сделали.
> В общем, если бы это было просто, и действительно нужно, то давно было
> бы сделано.
А если не сделать, то .NET дальше своей ниши не уйдет.
Posted via RSDN NNTP Server 2.0