Совместим ли Boo 100% C #? - PullRequest
       16

Совместим ли Boo 100% C #?

5 голосов
/ 17 июля 2009

Boo кажется очень классным языком. Это 100% C # совместимо? Я имею в виду: я могу использовать любой C # DLL / класс? Могу ли я использовать платформу XNA?

Ответы [ 4 ]

6 голосов
/ 17 июля 2009

Насколько я знаю, Boo имеет реализацию поверх .NET CLR, что подразумевает, что она должна быть в состоянии потреблять и потребляться кодом C #. Синтаксис не всегда может быть красивым при использовании Boo из C #, но, с учетом синтаксиса Boo, все должно быть довольно элегантно.

Кроме того, все классы в .NET BCL должны быть доступны вам в Boo.

2 голосов
/ 22 июля 2009

Да Boo легко потребляется C # и наоборот. Большинство лучших функций Boo не переносятся на C #, например синтаксические макросы, по понятным причинам, но вы можете создавать макросы в C # и использовать их в Boo. Кроме того, у Boo есть хорошая возможность создавать модули, чего вы не можете делать в C #.

Они оба могут создавать методы расширения. У Boo есть «duck», а в C # теперь ключевое слово «dynamic». Хотя оба они функционально эквивалентны, вы можете в конечном итоге увидеть слияние двух.

В настоящее время у Boo есть известные проблемы с генериками, но эта функция будет полностью поддерживаться, как только они будут устранены. Я подозреваю, что потребуется дополнительная работа для поддержки новых функций Co / Contra-дисперсии в .NET 4.

1 голос
/ 17 июля 2009

IIRC, любой язык, который компилируется в IL (Intermediate Language, версия .NET байт-кода Java.), Может работать с любым другим языком, который делает то же самое. Таким образом, вы можете смешивать C #, F #, ASP.NET, VB.NET, и если Boo делает то же самое, вы также можете использовать с C #.

1 голос
/ 17 июля 2009

Это не отличалось бы от использования VB.NET с C #. В настоящее время единственное различие между ними (функционально) заключается в том, что у Boo нет указателей ... но есть способы справиться с этим.

PS: Бу-это замечательный язык.

...