LINUX.ORG.RU

Новый язык V

 , , , ,


1

6

Что сообщество думает по поводу сегодняшнего релиза нового компилируемого языка с авто транслейтом Си в V
https://github.com/vlang/v
? Конкурент Rust?

★★★★★

Последнее исправление: menangen (всего исправлений: 1)
Ответ на: комментарий от guixoid

Смысл ему бежать? Будет и дальше пилить свой язык и собирать донаты.

Тут была тема как жить на опенсорс - да вот так https://www.patreon.com/vlang

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

Ну если уж речь зашла про го, то вот первый же пример из доки: https://tour.golang.org/methods/8

func (v *Vertex) Abs() float64 {
	return math.Sqrt(v.X*v.X + v.Y*v.Y)
}

func main() {
	v := &Vertex{3, 4}

Разницы никакой. Те же закорючки.

RazrFalcon ★★★★★
()
Последнее исправление: RazrFalcon (всего исправлений: 1)
Ответ на: комментарий от KillTheCat

Превосходит только на словах, потому что кроме автора никто ниногда никакого компилятора не видел. Автор вместо того, чтобы его релизнуть - сайт шлифует и README.md.

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

Ты упоротый что ли. Какой го.

It’s very similar to Go and is also influenced by Oberon, Rust, Swift.

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

Сегодня обещает жи ну!

А вдруг этот V Царь пилит?

anonymous
()

Прикольный язычёк, мелкий, шустрый. Судя по докам черезвычайно просто собрать, экосистема простая (пока ещё) и лёгкая в освоении. Интеграция с Си из коробки. Своих поклонников найдёт, я очень сомневаюсь что он захватит мир, но это вроде один из тех языков на которых пишут потому что няяяяяяяяя, а не понтами кидаются. Хотя если пойдёт путями Rust или Go став очередным монстром то помрёт быстро. Успехов чё.

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от anonymous

Донатеры получили, разве нет? А так сегодня он обещал открыть сорцы.

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

Какой же это матан? В математике симметрично выглядящие диапазоны [1; 5] и (1; 5) либо включают оба конца, либо не включают. А несимметричный [1; 5) включает 1 и не включает 5. И это логично.

В Расте 1..5 выглядит симметрично, но включает 1 и не включает 5. А 1..=5 - включает оба конца, но выглядит несимметрично. Чистой воды извращение.

Почему нельзя было для включающих оба конца диапазонов оставить 1..5, а для полуинтервалов - 1..<5?

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

Синтаксис там практически в точности как в Go. Взгляни хотя бы на то, как задаются типы.

Если ты в глаза долбишься, то ничем помочь не могу.

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

Не надо оправдывать говно. Всем очевидно, что у rust есть проблемы с синтаксисом (а может и более глубокие, которые приводят к ним).

anonymous
()

Кстати у них сайт делали маркетоиды, рассказывают чем они лучше конкурентов, но не упоминают почти чем конкуренты лучше их. А там есть что сказать

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

Нет смысла. Но сегодня же выходной.

PS: А вот синтаксис питона мне нравится. Самый человеческий среди скриптоты. А Го терпеть не могу.

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

Есть generic' и и нет сборки мусора

Так и в го можно выключить сборку и рулить через свой кастомный аллокатор. А дженерики это сахарок для interface{}.

Идейно это го, со своим блекджеком и шлюхой.

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

Так и в го можно выключить сборку и рулить через свой кастомный аллокатор

Как аллокатор поможет собирать мусор?

А дженерики это сахарок для interface{}.

Нет.

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

Если ты про паскаль, то у тебя с головушкой беда. Впрочем, беда в любом случае, чтобы не видеть 99%-й идентичность, надо быть крайне долбанутым. Не говоря уже о том, что автор сам пишет про то, что это калька с Go.

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

Как аллокатор поможет собирать мусор?

Руками. Для справки - в V тоже руками. Автор признаёт, что «не все случаи покрываются».

Нет

Да. Другой вариант с кодогенерацией даже рассматривать не хочется. Для этого говна есть кресты — если уж нырять, так с головой.

no-such-file ★★★★★
()
Ответ на: комментарий от RazrFalcon

По этим ссылкам нет объяснения, почему симметрично выглядящий в расте диапазон 1..5 соответствует несимметричному алгебраическому диапазону [1; 5).

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

Ещё раз.

А дженерики это сахарок для interface{}.

Што.

Nexmean
()
Ответ на: комментарий от no-such-file

Синтаксический сахар по определению не добавляет новых возможностей, лишь упрощает что-то для использования человеком. Дженерики же являются отдельной фичей системы типов языка. В рантайме там может быть код, аналогичный interface{}, но это детали реализации.

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

О, уберпогромисты пожаловали! Заскучал на каникулах, решил раст выучить? Иди лучше с пацанами в футбик гонять, а то мамка отругает за то, что целыми днями в компутер играешься.

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

Какой паскаль, что ты несешь? Ты в своей убогой жизни ничего кроме го и пскаля не видел что ли?

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

О, уберпогромисты пожаловали!

Ну если для того, чтобы считаться уберпрограммистом достаточно хоть изредка что-то да читать, то да, я здесь!

Nexmean
()
Ответ на: комментарий от no-such-file

А дженерики это сахарок для interface{}.

`interface{}` - это рантайм костыль, который требует использовать reflection, вносит кучу boilerplate кода для самых примитивных случаев и выбрасывает типобезопасность в окно. Решение без единого достоинства (не считая личное удобство Пайка при реализации компилятора), но с кучей недостатков. Официально рекомендуемая замена дженериков в Go - это кодогенерация (TM). Батя Пайк дал вам `go/ast` и `go/parser`, остальное за вами.

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

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

Дженерики же являются отдельной фичей системы типов языка

А что эта фича добавляет какие-то возможности? Про проверку типов не надо рассказывать, этого можно тупо аннотациями+линтером добиться. Т.е. по сути это просто инструментальное средство.

Вот шаблоны в крестах добавляют новое свойство языка, по сути являясь отдельным языком программирования для компайлтайма.

no-such-file ★★★★★
()
Ответ на: комментарий от WitcherGeralt

Да, знатно ты слился, петушок. Целых 10 минут искал и смог нагуглить только паскаль. Впрочем от макаки большего и не ожидал.

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