Can V Deliver on Its Promises?

13 hmac1282 3 5/17/2025, 11:23:37 PM bitshifters.cc ↗

Comments (3)

theamk · 4h ago
I think the critical thing of V, which article only mentions in passing, is it's "Fake it till you make it" philosophy. For me, this completely kills any interest I might have in the language.

In particular, many people close to the language make great-sounding claims, which are simply not true.

An example: if you go to https://vlang.io/, right there in "Safety" section, it mentions "No null (allowed in unsafe code)"

So you might think: great! This sounds like Rust but without all the tedious errors, I hate null pointer exceptions! But turns out this is pretty much a lie, there may be no "null" keyword, but it's not that hard to get it. Go to https://play.vlang.io/, enter the program and press "run":

    x := []&int { len: 10, cap: 0 }
    println(x[4])
    flush_stdout()
    println(*x[4])
I just this run this and got the response:

    &nil
    /box/code.v:4: at main__main: RUNTIME ERROR: invalid memory access
    /tmp/v_60000/code.01JVGJG6KBEYKWAMZZR4YPHR0S.tmp.c:10807: by main
    Exited with error status 255
that sure looks like a null to me (except spelled "nil").. and behaves as it was a null too. And no "unsafe" in sight!

Would you trust the language which outright lies about the basic features on its own front page? I certainly would not recommend so.

(Alternative interpretation is that this was not an intentional lie, but rather that language designers never thought how "no null" and "can create array of pointers without unsafe" rules would interact together.. That's even worse IMHO)

valunord · 5h ago
This piece cherry-picks misfires, ignores the last couple years of solid momentum, and pads its case with biased jabs while skipping repos that actually ship code in V. It lands as a “see, I told you so” hit, not a balanced review... Its takes on memory, stdlib, and maturity are half-true at best.

Not a trustworthy article.

benstigsen · 49m ago
I disagree. Having been a previous V developer contributing to the language (though arguably very little), the issues of missed deadlines, fake it till you make it and more seems completely valid.

If you join the Discord and search for "this week", "this month", "next week" and "next month" with Alex Medvednikov as the author, you'll see 80+ (yes, that many) missed deadlines, some that go all the way back to 2019.

Version 0.3 promised autofree and a syntax freeze, it got none of those. I remember discussing this with Alex, saying that it would be ideal, to publicly mention that autofree wouldn't be included in the release, and it is as if he just couldn't see why that type of communication was important.

There were also instances of moderators publicly being mean to other chatters, _especially_ when asking about valid concerns in the language, like the criticism mentioned in other blog posts (specifically the "V is for Vaporware" posts). When talking to one of the other moderators, this was defended as "cultural differences".

I left the team (and was blocked by Alex) the same day that another developer left.

The V syntax has also changed quite a bit, and is significantly more complex than it was in 0.3.

One thing I wish would have happened with V, would be having a narrow focus, instead of working on Gitly, vbrowser, ved, vinix, Volt, native backend, autofree, c-to-v converter, go-to-v converter and all the other things. Alex is very ambitious to the point that very little seems finished.