nemerle

May. 26th, 2009 07:55 pm
wizzard: (Default)
[personal profile] wizzard

Язык Nemerle, как оказалось, откровенно смешная штука. Впрочем, я подозревал :)

Напомнило haXe, но и отличия налицо.
Общее: и то, и то – маленькие ЯП, с небольшой комьюнити, де-юре стандарта нету (имплементация является стандартом), документации минимум, забавный компилятор, который выдает весьма cryptic errors, т.к. выразительная мощность (и количество потенциально возможных несоответствий написанного кода задумке программиста) совершенно несообразна количеству строк с ошибками, зашитых в сам компилятор :)

Язык собран по принципу design by committee, aka “давайте реализуем прикольные фенечки, которые всем нравятся”, благо нету тучного груза пользователей, который заставляет тысячу раз подумать, как именно работает та или иная фича или как она совместима со всеми остальными.

Отличие в том, что компилятор хаксе и большая часть стандартной библиотеки написаны одним человеком, вследствие чего для того, чтобы на нем писать, нужно точно так же думать :) вспоминается, как мы долго (несколько дней) бились над странной ошибкой ‘Unexpected end of file’, которая, как оказалось, вызвана тем, что имена типов в хаксе должны начинаться с большой буквы, и это тупо зашито в лексер, поэтому _импортировать_ класс из чужой библиотеки (написанной не на haXe), если он начинается с маленькой – нельзя )))

Здесь людей работало больше, поэтому язык ближе к average joe, сильно недостает концептуальности, увы, но в общем его можно успешно рассматривать как “C# на стероидах и с макросами”.

Выведение типов очень смешное, в смысле своей ограниченности. А жаль, ожидалось что это будет мощнее, чем generics. Подсветка синтаксиса и autocomplete-тоже. Код раскрашивается ожерелью ворнингов и эрроров, но тем не менее компилится. Почему? Потому что макросы есть. Фиг вам, а не автодописывалка.

Писать можно, писать прикольно. Компилится, правда, очень долго (тривиальные примеры – 5-10 секунд). Может, время компиляции от размера проекта растет незначительно, но все равно, очень непривычное ощущение, шарп компилит проекты из тысяч файлов за такое время.

UPD: а еще рефлектором нетривиальный код декомпилируется (в шарп) во что-то крайне невразумительное. Естественная обфускация :)

UPD: скриншот глюков подсветки
(will be screened)
(will be screened if not validated)
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org

Profile

wizzard: (Default)
wizzard

January 2019

S M T W T F S
  12 345
6789101112
1314 1516171819
202122 23242526
2728293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 6th, 2025 05:42 pm
Powered by Dreamwidth Studios