LINUX.ORG.RU

Vala 0.1.7

 ,


0

0

Тихо и незаметно вышла новая версия языка, похожего по синтаксису на C#, но не использующего CLR. Вместо этого компилятор генерирует код на C с использованием объектной модели GLib, который затем компилируется как обычно.

В новой версии:

  • Улучшен синтаксис свойств
  • Обнаружение отсутствующих выражений return и break, а также недоступных фрагментов кода
  • Улучшена поддержка указателей
  • Добавлена поддержка WebKit, JSON-GLib, goocanvas, hildon-fm-2, taglib, libusb, и bzip2

>>> Подробности

Ответ на: комментарий от gaa

>> поскольку в яве тоже сильная привязка к сановскому компиллятору

> Ну в яве это вроде б в стандарте.

а кто этот стандарт выполняет кроме сановского компилятора? да хоть в 30 стандартах -- а копилятор (насколько я знаю) всего один, остальные не поддерживают яву 6 (да, я знаю что рефлекшн это не ява 6)

________________________________________

А вообще мне кажется что рефлекшн должен совсем не так поддерживаться.

Должен быть такой шаблон, который запускает другой шаблон на каждом члене класса, и возвращает что-то результирующее.

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от gaa

>> Нету никакой связи между урезкой и фишками

> Есть. Например, управляемый heap можно сделать(не нарушая идеологию языка) только в языке с урезанными указателями и без адресной арифметики(java, c#)

Согласен, есть. Но не настолько, чтобы когда болел зуб, удалять всю голову.

Вот в С# так хотя бы не голову отрезали, а только нижнюю челюсть.

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

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от www_linux_org_ru

> Должен быть такой шаблон, который запускает другой шаблон на каждом члене класса, и возвращает что-то результирующее.

Ужас.

INFOMAN ★★★★★
() автор топика
Ответ на: комментарий от INFOMAN

>> Должен быть такой шаблон, который запускает другой шаблон на каждом члене класса, и возвращает что-то результирующее.

> Ужас.

А ты можешь реализовать рефлекшн по-проще или покрасивее?

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от www_linux_org_ru

>> Ну в яве это вроде б в стандарте.

> а кто этот стандарт выполняет кроме сановского компилятора? да хоть в 30 стандартах -- а копилятор (насколько я знаю) всего один, остальные не поддерживают яву 6 (да, я знаю что рефлекшн это не ява 6)

Ну зато есть надежда, что в любом другом компиляторе, когда этот стандарт реализуют, всё будет работать так же.

gaa ★★
()
Ответ на: комментарий от www_linux_org_ru

>> Есть. Например, управляемый heap можно сделать(не нарушая идеологию языка) только в языке с урезанными указателями и без адресной арифметики(java, c#)

> Согласен, есть. Но не настолько, чтобы когда болел зуб, удалять всю голову.

Возможно.

> Вот в С# так хотя бы не голову отрезали, а только нижнюю челюсть.

Скорее так: в 1.0 снесли всю серхнюю часть туловища, а потом за пару версий нарастили до нижней челюсти :)

> Я бы например предложил классу С перегружать операцию взятия указателя от него и/или инкремент указателя на него... что-нить в этом духе. В том числе можно было бы эту операцию делать приватной, тогда это равносильно запрету.

А operator*() не это делает?

gaa ★★
()
Ответ на: комментарий от INFOMAN

>> Должен быть такой шаблон, который запускает другой шаблон на каждом члене класса, и возвращает что-то результирующее.

> Ужас.

Шаблоны выглядят страшно, не спорю, и язык (в том числе Валу) надо реформировать на эту тему.

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от www_linux_org_ru

>> А operator*() не это делает?

> Пример приведи

Выдернул из инклюдов mingw:

reference
operator*() const
{
_Iterator __tmp = current;
return *--__tmp;
}

pointer
operator->() const
{ return &(operator*()); }

gaa ★★
()
Ответ на: комментарий от INFOMAN

Однако vala не заменит в переспективе дотнет рантайм, а моно да. И если сравнивать 'embedded gnu/linux' и какой-нибудь 'windowsCE+.net', то что-то мне подсказывает, что винда будет прожорливее, вероятно даже в разы.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.