Live data from Hacker News

The V Programming Language

vlang.io

161–170 of 308 posts

Re: The V Programming Language

#161
post #142

Hm I looked around the repo, and there doesn't seem to be much there. $ find . -name '*.v'|xargs wc -l|sort -n ... 314 ./glm/glm.v 330 ./time/time.v 338 ./builtin/utf8.v 339 ./examples/tetris/tetris.v 490 ./os/os.v 630 ./compiler/scanner.v 644 ./compiler/table.v 712 ./gg/gg.v 814 ./builtin/string.v 845 ./compiler/main.v 848 ./compiler/fn.v 3216 ./compiler/parser.v 12573 total I'm a big fan of compact code, i.e. doing…

I can't understand criticising a brand new, v0.0.12 language built entirely by one person of being too small...

Re: The V Programming Language

#162
In case the author ever reads this: assuming good faith, the effort and intent is laudable, but you've put the cart in front of the horse by having multiple amazing claims that would take many, many man/years to accomplish by experienced developers, which is why they've been received with a lot of skepticism. Even assuming a great level of skill, the claims a priori are hard to take serious, even before taking into consideration the timeline. Now that (part of?) the code has been released, it seems to be little more than a transpiler from V to C, with allowed inlined C, with most advertised features stubbed out. Had you been claiming "this is my target, very much in progress", then the response to them would be less adversarial and more in the line of "there are multiple reasons all of these targets are not necessarily attainable simultaneously". Had you done that, your Patreon would also likely not have a monthly ~1000 USD support either, which is a big part of why you are in the receiving end of online backlash.

I want to imagine that you just got way over your head, underestimating the effort needed to accomplish all of your goals, but at some point it takes a bit of naiveté to think that well-funded teams in other languages haven't tried to fulfill some of your goals before. I'm very much intrigued by the "Space required/Build time" table, particularly how you think the comparison makes sense or is fair in any way, as you're comparing compilers for established languages with extensive standard libraries, implemented and battle tested features and a decades of man/year effort to your solo project.

Looking at the project it is really hard to come away with an opinion that isn't one of "this is a joke", "this is fraudulent" or "this is a well intentioned inexperienced developer that has no idea how high the target they've set for themselves is". I hope that if it is the latter.

Re: The V Programming Language

#163
post #142

Hm I looked around the repo, and there doesn't seem to be much there. $ find . -name '*.v'|xargs wc -l|sort -n ... 314 ./glm/glm.v 330 ./time/time.v 338 ./builtin/utf8.v 339 ./examples/tetris/tetris.v 490 ./os/os.v 630 ./compiler/scanner.v 644 ./compiler/table.v 712 ./gg/gg.v 814 ./builtin/string.v 845 ./compiler/main.v 848 ./compiler/fn.v 3216 ./compiler/parser.v 12573 total I'm a big fan of compact code, i.e. doing…

I can't understand criticising a brand new, v0.0.12 language built entirely by one person of being too small...

Extraordinary claims require extraordinary evidence. If the information presented on https://vlang.io/ had any hint of being aspirational as opposed to comparing it directly with existing languages, and the author had less confrontational interactions with skeptical people online, the reaction to this language would be different. Of course, without the extraordinary claims this code dump would also not receive the attention it has.

Re: The V Programming Language

#164
After going through the source code, I can tell for sure that it's an insecure C transpiler.

- Most things call just out to C.

- A lot of examples don't even compile.

- Some things use CLI curl or mkdir, this is /INCREDIBLY/ insecure.

- Many things are unimplemented.

- Dev banned me off org when I opened issues about these and deleted issues. I was unnecessarily rude on some which I apologize for, but deleting them and calling me a troll was uncalled for.

I wrote about them here: https://twitter.com/boy_edgey/status/1142504580074344448 (thread)

Re: The V Programming Language

#165
Despite the immense neophobia of Hacker News, I'll jump forward and say I think there's a lot to love around vlang.

Go is an amazing language and my go-to language for most backend tasks these days, but often when jumping back from Python, it feels needlessly cumbersome.

Now don't get me wrong, I'm not talking about any "magic", Go is exactly as great as it is, because it's so simple and barebones. I'm talking about some basic comfort that costs mental energy but zero complexity or execution speed. The things the Rust community calls "zero cost abstractions". But the core language developers seem to be pretty opinioated and _of course_ a set can be logically thought as just a map of empty structs, so you don't need two concepts in a language. But it's something I have to teach to every developer starting out.

And although Rust gets a lot of things right, it's too complex for my choice. The performance/simplicity ratio of Go is just right, so that's what makes me hopeful about V.

Vlang introduces so many concepts I just would have loved in Go. Native Enums. Immutability by default. In operators. The list goes on and on and on.

At this point, it's absolutely overpromised and pretty much unusable without a stdlib, an ecosystem and GC. But my best case scenario would be the CoffeeScript case. A language that so beautifully covers another major language's warts, that it drives the major improvements back to the origin.

Go 2 devs, please listen. 90% of the ideas in V are pure gold.

Re: The V Programming Language

#166
post #156
post #150

Earlier quoted context omitted.

> No GC How does that improve upon Go? Memory safety is much harder without a GC

It is not in my opinion. With modern development tools/frameworks providing memory leaks detection I have completely forgotten when was the last time that my programs leaked memory. And I write complex high performance game servers that run for months non stop. You just have to acquire certain culture/behavior when writing code.

What languages/tools/frameworks/behavior are you using to develop these game servers with no leaking memory?

Re: The V Programming Language

#168
post #142

Hm I looked around the repo, and there doesn't seem to be much there. $ find . -name '*.v'|xargs wc -l|sort -n ... 314 ./glm/glm.v 330 ./time/time.v 338 ./builtin/utf8.v 339 ./examples/tetris/tetris.v 490 ./os/os.v 630 ./compiler/scanner.v 644 ./compiler/table.v 712 ./gg/gg.v 814 ./builtin/string.v 845 ./compiler/main.v 848 ./compiler/fn.v 3216 ./compiler/parser.v 12573 total I'm a big fan of compact code, i.e. doing…

I can't understand criticising a brand new, v0.0.12 language built entirely by one person of being too small...

[deleted]

Re: The V Programming Language

#169
post #156
post #150

Earlier quoted context omitted.

> No GC How does that improve upon Go? Memory safety is much harder without a GC

It is not in my opinion. With modern development tools/frameworks providing memory leaks detection I have completely forgotten when was the last time that my programs leaked memory. And I write complex high performance game servers that run for months non stop. You just have to acquire certain culture/behavior when writing code.

What tools for memory leaks detection you can suggest?

Re: The V Programming Language

#170
post #157
post #142

Hm I looked around the repo, and there doesn't seem to be much there. $ find . -name '*.v'|xargs wc -l|sort -n ... 314 ./glm/glm.v 330 ./time/time.v 338 ./builtin/utf8.v 339 ./examples/tetris/tetris.v 490 ./os/os.v 630 ./compiler/scanner.v 644 ./compiler/table.v 712 ./gg/gg.v 814 ./builtin/string.v 845 ./compiler/main.v 848 ./compiler/fn.v 3216 ./compiler/parser.v 12573 total I'm a big fan of compact code, i.e. doing…

mkdir /var/tmp/vlang0.0.12 fixes the Segmentation fault for me EDIT: Not needed anymore

You can also mkdir vlib in whichever directory you're trying to run vc and it will generate that temporary directory automatically.

Unfortunately, that doesn't seem to be enough to actually generate output (or I just can't find the output file).

EDIT: The generated C code gets put in /var/tmp/vlang0.0.12/v.c and compiling it gives me a new compiler which outputs slightly different C, so it seems to work. The description in the README doesn't mention that manual compilation step, so something seems to have gone wrong.

EDIT2: It works if you have clang installed, which I didn't. The compilation step should probably default to cc instead.

Post reply on HN