С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Не понимаю зачем нужны доступы к raw данным при компиляции, тем не менее в c# это не сложнее чем в си. Однако копиляция строится в виде поточной обработки. Насколько помню, вначале выделяются токены по правилам лексики входного языка. Которые затем потоком обрабатываются сложным конечным автоматом по таблицам мудрено выведенным из правил и семантики входного языка. В процессе обработки активно юзаются коллекции типа стек и дерево для хранения промежуточного состояния. На выходе поток операторов на псевдо языке близком по смыслу с машинным кодом, затем псевдоязык транслируется в код целевой платформы, тоже поточной обработкой. Так что raw доступы к данным тут вообще не нужныТут больше нужна активная работа с коллекциями разных типов, а это лучше всего развито именно в c#.
Все что нужно для написания компилятора, в c# реализовывается максимально выразительно и оптимально. Лучшего языка для этой задачи не найти (не считая разве что всяких специализированных).
Насчет перла не согласен, я даже не слышал чтобы его ктото для написания компиляторов использовал
C# это и есть брат джавы, при разработке c# просто учли все проблемные места джавы, c# приобрел более выразительный синтаксис и модульность, а также много современных возможностей - дженерики, аттрибуты, экстеншены, лямбды, замыкания, анонимные классы, автосвойства и т.п., вобщем это более современная и отлаженная джава, лишенная рудиментов, но оба эти языка принадлежат одному поколению, на ступеньку выше c++.
Последний раз редактировалось ZXMAK; 18.11.2014 в 06:56.
ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet
Пока не согласен, но это не сильно и важно ИМХО.
Да никто конечноже, но парсить на нем - милое дело.
Ну сишарп не брат конечно нифига и написан совсем даже не "для улучшить жабу", а банально из-за NIH синдрома Микрософта, которая нашла в жабе от сана фатальный недостаток и поправила его в своей реализации из-за чего получила пожизненый судебный бан на распространение как своей версии, так и сановской вместе с поставками своей ОС. Да и если мне склероз не изменяет все то что ты описал есть в той-же жаве или в том-же objc. 8)
Далеко не всё.
Дженерики, аттрибуты, анонимные классы и замыкания - есть. А остального... Да в этой чертовой джаве даже делегатов нет, и любой callback - боль. C# реально самый удобный и лаконичный язык из компилируемых. Окей, из популярных компилируемых. Какие-нибудь Nemerle, D или Swift может и не хуже, но доли рынка у них нет никакой.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)