top | item 27432571

Vinix – An effort to write a modern, fast, and interesting operating system in V

107 points| letientai299 | 4 years ago |github.com | reply

79 comments

order
[+] spicybright|4 years ago|reply
I'm always interested to hear about people developing OS's. Hope they implement some stuff other ones don't have.

I never heard of V so I looked it up:

https://vlang.io/

An implementation of 2048:

https://github.com/vlang/v/blob/master/examples/2048/2048.v in V

[+] maccam912|4 years ago|reply
I remember shenanigans when V was first announced (release date for public preview, but for a little money you get early access), people being upset that it was half-baked, etc. and wrote it off, but I've heard that it has since changed a ton and is nothing like the early days.

Can someone familiar with recent V developments comment on this? It makes bold promises that would be awesome to see realized, but I got the feeling there was just a lot of smoke and mirrors going on in the early days.

[+] vlang1dot0|4 years ago|reply
Things have improved but it's not clear the author realizes the magnitude of what he's trying to do.

The big ticket item is the autofree memory management system which promises near C/Rust performance and minimal overhead without the complexity of borrowing and ownership. To date, this system does not work and is "wip" as the vlang community likes to say. There are also no clear explanations of how it works beyond just "it inserts calls to free() when you are no longer using a variable" which is ... extremely obvious. The more interesting question of how the compiler determines something is no longer being used in the face of aliasing and no borrowing system is completely unanswered. No one working on the project understands how complex that problem is. Initially the goal was that this system would manage all memory for the programmer automatically, this goal has since moved to "manage 90% of objects in memory and use GC for the rest". I suspect we will see that number continue to drop as the author realizes this is intractable without whole program analysis (which they can't do and still hit their compilation time targets).

Other items are very much in an alpha state if they work at all. Only in the last month have you been able to create a generic function with more than one type parameter, although V has been claiming support for generics since at least last year. There's still no ability to constrain the type parameter to something that implements an interface/trait/protocol.

C2V, another wildly ambitious project that could literally be a PhD project in automatic language translation, was supposed to be released "this week" 5 weeks ago. It's currently in a very private alpha and no source has been released.

Which is basically the state of most of the author's projects: huge promises in terms of features and performance with most of them little more than demos. I've come to believe this is an intentional strategy by the author to maximize his Patreon revenue. He makes big promises on social media and then delivers the easy 20% of the project to his followers before switching to another project. It would make far more sense to release a finished project before starting another massive one and yet he can't sit down and finish a project because he knows he can't actually deliver what's been promised.

[+] dom96|4 years ago|reply
Not only did this project make a lot of false claims about itself but also other existing programming languages. This included Nim (which I am one of the core devs on).

It’s rather sad to see people get roped in by these claims. This project is a true example of how far pushing false promises and lies can get you and it makes me a bit sad about the world.

[+] mintsuki|4 years ago|reply
Hello, I am the maintainer of Vinix and main contributor. Feel free to ask me anything about the project!
[+] noobermin|4 years ago|reply
You mentioned this in another comment but how do you feel about the other new systems level programming languages and how they compare to V like nim, zig, rust etc.
[+] unknown|4 years ago|reply

[deleted]

[+] programmer_dude|4 years ago|reply
V is shady AF. Steer clear of it.
[+] AnimalMuppet|4 years ago|reply
Either that's slander, or it needs some explanation and, preferably, documentation.
[+] Shadonototro|4 years ago|reply
Zig is shady AF. Steer clear of it. Andrew, Jai coming at you soon ;)
[+] super_flanker|4 years ago|reply
I want to ask V community a question, as they advertise their language as safe, what do they mean by safety and what does V compiler do to maintain this safety?
[+] davtur19|4 years ago|reply
Have you bought github stars from a click farm again and then show how many stars you have compared to other langs?
[+] adamrezich|4 years ago|reply
did this happen? is there proof somewhere?
[+] colesantiago|4 years ago|reply
Imagine caring about a projects organic growth from GitHub stars from China lol.

The simplest explanation is that maybe they 'like' the project?

[+] jeromenerf|4 years ago|reply
This reads as a bit more ambitious than the usual HelloWorld or http framework example project.
[+] Koshkin|4 years ago|reply
Ah, they missed the chance to call it VNIX.
[+] mro_name|4 years ago|reply
an interesting language. Thanks for sharing.