Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Maybe someday I should try learning V again

Why? Correct me if I’m wrong but this language has literally no unique attributes that would make it different than D or Go, so you won’t improve as a developer from it at all.

Not trying to dissuade you from it, afaik most of the initial false claims have been debunked and now V is a real thing, but what is left from it is.. really not that interesting to my eyes.



> this language has literally no unique attributes that would make it different than D or Go

I'm not familiar with D, but compared to Golang, it seems to have a bunch of goodies compared to it. Small list: immutability by default for lots of things, no null, small and fast compiler, "4 ways to manage memory", hot code reloading and repl.

These are just the ones I could find on a quick skim, I'm sure there is more.

> Not trying to dissuade you from it

You are literally saying that it's not "interesting to my eyes" but then before that you say "you won’t improve as a developer from it at all", how is this not trying to dissuade someone?


> small and fast compiler

Go's compiler is famously fast, isn't it? I don't know about small, but that only seems relevant if you're working on the compiler itself.

> "4 ways to manage memory"

People complain about D having 2 ways to manage memory, so isn't this twice as bad?


> this language has literally no unique attributes that would make it different than D or Go

It does, a lot: https://vlang.io/compare#go


Let me preface it: go is a thoroughly uninteresting and in my opinion bad language from a PL perspective - it demonstrably failed at many things we have known for 40 years before it.

Adding some of that back to V only “fixes” where Go went wrong, so I would need something additional on top to consider this language.


Go is a great language, revolutionary, I would say.

Just for one thing: focus on simplicity and fast builds.


If your language is too simplistic, essential complexity will just live in your ad hoc program instead, which is objectively worse. Especially that you will realize it later that you are missing some core utils and have to patch it up (e.g. generics in case of go).

There are dynamic languages with zero compile times, but Java builds just as fast for me as Go and it is a much more expressive language than Go, which is a shame.


> If your language is too simplistic, essential complexity will just live in your ad hoc program instead, which is objectively worse.

Not from my experience. Go is a breath of fresh air in this over-engineered complex industry.

Go promotes simplicity and speed, and so does V.


Agree to disagree here :)

Not every program is a basic CLI app with 3 network requests, and the only tool we have against complexity is abstractions.


Most of the stuff we use is written in C. Which is even smaller than Go.

You don't need complex langs to write software.


Uh, C is not really small nowadays. ISO C specification is about 200 pages long even without all the library. (It's hard to compare directly, but Go is probably around 50~100 pages long when formatted similarly.) C could have been small enough, but ISO C is not.


Also, most of what? Besides OSs, tiny tools, DBs and embedded, C is not used all that much. Where truly high performance is required, the de facto language of choice is C++ (see e.g. browsers) and business applications (which are the most numerous) are definitely not written in C in most cases.


Most of the stuff we use was written in C89 and even older versions :)


A big reason I'd go back to V would be simply to complete the job I left undone by not learning it.

I'm intrigued that you compared V to D. I'm a huge fan of D, and I'd be interested in hearing why you made that comparison.


I like how you can translate any C program to V automatically.


Yep! Here's DOOM translated from C to V:

https://www.youtube.com/watch?v=6oXrz3oRoEg


Some C programs, not all. For example Andy Sloane’s donut.c. Granted, it is beautifully obfuscated but still, it uses just standard C features.

https://www.a1k0n.net/2006/09/15/obfuscated-c-donut.html


> Why?

Not understanding the need to be dismissive of someone else's plans. Part of the fun of programming is checking things out, if we maintain an open-mind.

> this language has literally no unique attributes that would make it different than D or Go, so you won’t improve as a developer from it at all...

Such a statement can be perceived as highly inflammatory. V clearly has different features from D and Go. Additionally, V is among the most popular programming languages on GitHub[1], based on stars. And has been so for some years now. Other people clearly use and experiment with it. What you and I like, doesn't mean that others don't or can't have different preferences.

[1] https://ossinsight.io/collections/programming-language/


> V clearly has different features from D and Go

Such as? I’m open to changing my mind, but didn’t see anything notable on the official website’s listed differences between V and Go.

> Additionally, V is among the most popular programming languages on GitHub

Come on, not even you believe that! There are clearly more projects written in goddamn Coq out there than V, it is such a niche language currently..


I'm fairly familiar with both V and D (even made some minor contributions to the V compiler), and I can't think of a single notable feature that isn't also available in D. V has a more modern and straightforward syntax, but that's the only major advantage imo. In terms of what you can _do_, I'm pretty sure D is almost strictly more powerful.

V can produce JavaScript, and it has an interpreter, but those are pretty experimental features. V has built in markup templates (like Mustache but worse), basic built in JSON reflection (D's CTFE can implement this), and built in portable inline SQL (for some reason), but that might be less desirable than targeting one specific ORM with its entire feature set. V also has a built in Sokol shader compiler, and can run `.vsh` files in a special script mode that works very slightly differently than normal V, but those aren't exactly killer features compared to D imo.


I have one. It's not OOP :)


>V is among the most popular programming languages on GitHub

To note, refereed link is only about the language repo and not as language used for making projects.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: