LINUX.ORG.RU

Стоит ли?

 


0

1

Недавно заинтересовался. Вроде похоже на наращивание уровня ЯП снизу. Что-то на эту тему ни здесь ни на хабре давненько не пишут. Неужто сдохло?

★★★★★

Унылый транслятор унылого цшорпа в си. Используется гномодевелоперами, но вне гнома (имхо) смысла имеет мало.

PolarFox ★★★★★
()

не стоит, уныло

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

Есть что-то лучше по критерию высокоуровневость/оптимальность выхода на низкоуровневый рантайм?

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

Потому что вне мира gtk у vala плоховато с биндингами. По той же причине и Go пока подходит в основном только для разработки под web (ну или более общего серверного софта) или какого-нибудь околосистемного софта.

Но за Go стоит гуголь, а за vala всего лишь гномодевелоперы.

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

как фанатик Go я просто обязан его посоветовать

Он под оффтопиком нормально работает уже, кстати?

(Не вброса ради, просто мне он тоже нравится)

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

Он под оффтопиком нормально работает уже, кстати?

Под 64-битным вроде бы да. А вообще фиг знает, хорошая поддержка винды, судя по всему, в планы гугля не входит.

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

Путь наименьшего сопротивления — склёпать формочку в кутикриеторе. Быстро, кроссплатформенно, опенсурсно.

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

а за vala всего лишь гномодевелоперы

Да? По крайней мере разработали его в цюрихском техническом институте.

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

По крайней мере разработали его в цюрихском техническом институте.

А выглядит как копия цшорпа.

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

vala всего лишь гномодевелоперы

Да?

Да. Довольно плохая копия, правда.

По крайней мере разработали его в цюрихском техническом институте.

Это доказывает, что не каждый студень ETH - потенциальный Вирт.

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

Да. Довольно плохая копия, правда.

А чем же она плоха?

Это доказывает, что не каждый студень ETH - потенциальный Вирт.

Это да, конечно. Вирт - он один.

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

Зачем жаба существует? Зачем скучная копия её создавалась? А зачем создали сабж? Ответь на этот вопрос.

А вот зачем создавался Go я хотел бы услышать.

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

Зачем жаба существует? Зачем скучная копия её создавалась? А зачем создали сабж? Ответь на этот вопрос.

Тут вопроса аж 3. MS нашли в жабе тотальный недостаток — её придумали не они, MS так часто делает, ничего удивительного. А гномерам, видимо, надоело писать всё на си, и они решили начать использовать что-то более удобное.

Go в общем-то возник после того, как Роб Пайк и его гугловские друзья полистали 500 страниц стандарта С++ и решили, что написать свой системный язык будет проще, чем разобраться в этом дерьме.

Ну и да, го — нескучный (в хорошем смысле этого слова) язык.

PolarFox ★★★★★
()

Не, изначально мертворожденное.

anonymous
()
Ответ на: комментарий от PolarFox

Да какой он к черту системный? lol И по мне, так очень скучный...

anonymous
()

Если ты собираешься писать в рамках Gtk/Gnome экосистемы, то Vala - хороший выбор.

На Vala написан Gnome Shell, оно не умрет в ближайшее время (пока не умрет Gnome 3 :) )

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

ИМХО, но язык с вездесущими ссылками и объектами, но без сборки мусора(костылики в виде подсчета ссылок нормально работают в условиях, например, С++, но не в таких).

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

В версии для OS X существует сборка мусора (если еще не дропнули в пользу ARC) и ARC (автоматический подсчет ссылок), который нормально работает и на iOS и на OS X.

Но согласен, модель управления памятью сложная.

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

Да, ты прав, теперь там только С + JS. Изначально была выбрана Vala, потом, видимо, ушли на чистый Си.

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

Если ты собираешься писать в рамках Gtk/Gnome экосистемы, то Vala - хороший выбор.

Почему-то о qt относительно QtGui/KDE так не говорят.

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

Расскажи, что в нем нескучного?

Пишешь меньше букв, выходит больше смысла. Благодаря некоторым фичам, писать на этом языке так же приятно, как на скриптовом. При этом нативная (на уровне синтаксиса языка) concurrency, статическая типизация и прочие няшки.

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

Мне не нравится упоминание тобой гнома. Очень похоже на стереотип.

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

Просто, прочная завязка на экосистему гнома - это же вроде гномовские либы (отвечающие за внутренние механизмы DE) в зависимостях. У Vala - только glib/gtk что немного иное.

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

Технически да, у Vala завязка только на GObject, даже не на Glib. И то, я читал где-то, что и от GObject отвязали.

Просто использование Vala где-то кроме экосистемы Gtk/Gnome малоцелесоорбразно, на мой взгляд.

mono ★★★★★
()

Тем кому моно не нравится/не подходит самое то. Пилят активно. Других альтернатив не вижу. Не на убогих крестах же писать.

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

А разве vala не является языком, еще более убогим, чем кресты?

anonymous
()

Vala и Python скорее всего станут основными языками в экосистеме Ubuntu

Отличный язык, но действительно привязан к экосистеме Gnome/Gtk. Синтаксис языка схож с таковым у C#. Но Vala транслируется в сишный код, который затем компилируется.

yanka ★★
()

Vala активно разрабатывается.

Активность в разработке языка зашкаливает, у Vala есть биндинги в подавляющему большинству Gnome библиотек. Скорее всего именно Vala станет основным языком в будущем Gnome SDK.

yanka ★★
()

У Vala glib/gobject вместо нормального рантайма (в том числе reference counting как средство автоматического управления памятью). У конкурентов (Java/C#) - настоящий рантайм со своими кучами, аллокаторами, сборщиками, JIT под каждую архитектуру.

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

ИМХО валу и выбирают ради натива, где преимущества рантайма нафиг не упёрлись.

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

валу и выбирают ради натива

Что значит «натива»? В любом случае, в этом смысле какой-нибудь D выглядит гораздо лучше.

где преимущества рантайма нафиг не упёрлись

Но сам язык того же уровня что и Java, с автоматическим управлением памятью. Так что всё равно нужен свой рантайм, пусть и с костыльной трансляцией в си и дёрганьем функций glib/gobject. У любого другого языка с достаточно толстой VM есть в исходниках реализации некое количество .c (или .cc) и .h для рантайма и которые играют ту же роль что и гномо-библиотеки для валы, с той разницей, что они разрабатывались с учётом особенностей данного языка / платформы.

quasimoto ★★★★
()

Планировал перейти на сабж, но мне надо чтоб пахало под офтопиком, а под ним сильно древняя сборка gtk и сабжа втч. Язык новый настолько, что древние версии принципиально уступают новым. Вот жду gtk3 билда под офтопик. Сам ниасилил ни жццхой (нехватает одного дефайна в компилере) ни шлангом (он под офтопом он плохо поддержуется и валится на юнионе который в принтэфе жлибовом юзается).

На счет биндингов - не проблема. Пишутся легко. На крайняк можно vala->c и компилить уже то, что вышло. Вроде как из всех кодогенераторов в C сабж имеет наиболее читаемый выхлоп.

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

А как это говно дебажить? Неужели так трудно запилить нормальный компилятор, отладчик и пр.? На хрена в С транслировать?

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

А нахрена транслировать в мешанину запутанных машинных кодов и потом молиться авторам компилера чтоб оно не тупило, как это происходит например с хаскелем. Прозрачная трансляция в Си по-моему большой плюс для немейнстримовых языков в неакадемических проектах. К тому же она даёт возможность продвинутого ffi биндинга - можно создавать высокоуровневые структуры языка прямо из сишного враппера, хотя польза от этого спорная. Именно из-за трансляции в Си среди лиспов я предпочитаю ecl, хоть у него и есть некоторые проблемы с пакетами из-за его непопулярности.

На счет дебага - сабж вроде может сам компилить до объектника проставляя номера строк. Если нет - дописать не проблема. Может даже есть директива для сишного компилера, которая перемапивает отладочную инфу на строки другого файла. В хаскеле нечто подобное видел. Проверять это лень...

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

Не парься и пиши под mono. Я серьёзно.

Сабж действительно достойный язык по сравнению с шарпом. Разве что reference couting напрягает. Он как бы немного изменил философию шарпа в сторону повышения производительности ценой небольшого усложнения и пошел немного другим путём в связи с отсутствием корней в C++. Так что дело вкуса, да и от задачи зависит.

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

среди лиспов я предпочитаю ecl

Как жизнь на заброшенной реализации? Я вроде слышал у неё какие-то проблемы с поддержкой стандарта. Что можешь сказать о её реинкарнации mkcl?

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

ecl

заброшенной реализации

4.2 надо признать.

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