← Back to context

Comment by pityJuke

2 years ago

I'll always be skeptical of the claims. Much less of a trust but verify, but a "you have to verify every little thing" [1]. The analogy that came to my head is how Elon always says self-driving is coming right around the corner [2]. Sure, some progress is made towards it, and maybe it'll come true one day... but don't take any of the claims at face value.

[1]: https://mawfig.github.io/2022/06/18/v-lang-in-2022.html

[2]: https://jalopnik.com/elon-musk-tesla-self-driving-cars-anniv...

You should always verify every little thing for any new language you’re thinking of using, if only to understand its behavior in details, warts and all. I did the same when I first learned C, C++, Go etc. etc. But one must separate (what I consider) marketing fluff from reality. Evaluate for yourself whether the new language is worth learning, whether its development is going in the direction you can mostly agree with, whether it has promise, whether it is developing an ecosystem etc.

The claims, and the ways V implemented them (as of the 2022 article), feel very much like the famous HTML regex answer on Stack Overflow.

None of the bugs in the first article are relevant today.

  • All I'll add is that whether or not that specific example holds up today matters little to the wider point: which is, that the language makes promises, and you need to verify each claim due to the repeated [0] ambiguity/inaccuracies about them.

    [0]: Across the span of the 2019-2022.

    • It is very easy to verify. Just have a working C compiler + git + make:

          git clone https://github.com/vlang/v
          cd v
          make
          ./v your_program.v
      

      On a modern machine with good network, it will take you under a minute, to have your own copy of latest V, and less than 200MB, including the .git/ folders.

      You can also download .zip releases from https://github.com/vlang/v/releases , without needing git. The .zips there are <15MB, and contain a prebuilt V executable, so you do not even need make to use it.