Page MenuHomeSolus

Open, WishlistPublic


Name of the software
The V Programming Language

Project/product Homepage

Why we should include this into the repository, i.e. what does it do that the alternatives do not?
Comparison of V and Other Languages -
I created V because none of the existing languages had all of the following features:
Fast compilation D, Go, Delphi
Simplicity & maintainability Go
Great performance on par with C and
zero cost C interop C, C++, D, Delphi, Rust
Safety (immutability, no null, option types, free from data races) Rust
Easy concurrency Go
Easy cross compilation Go
Compile time code generation D
Small compiler with zero dependencies -
No global state -
Hot code reloading -

Is it open source?
Yes - MIT License

If it is open source, please provide a link to the most up to date, versioned source tarball/zipfile. links will not be accepted.

Event Timeline

logTom created this task.Oct 3 2019, 7:36 AM

Ugh. Do people even try to check for file extension collisions before they decide on them? .v is for Verilog and had been for decades.

Jacalz added a subscriber: Jacalz.Oct 28 2019, 7:47 PM

I have a working initial version of v build from the vc source and then a rebootstrap of v built in production mode using vlang itself. If this gets accepted I could step up to maintain it, because I've looked at it for a long time and I really think that it has some things going for it.

I guess I'm not strictly opposed, but if we start having MIME-type collisions with Verilog software, I'll personally get pissed off. Verilog is too commonplace to be breaking it for a new language.

I wouldn't want to possibly get you pissed off, so I guess I won't push up the revisions then...

@Jacalz as long as this doesn't ship any MIME info, I'm OK with it.

Alright. I will package this when I deem it ready to do so. I am waiting for two feature requests to be implemented that should make it more friendly for packaging in distributed packages where updates are handled by the package manager. This will most likely be sometime after the initial stable release due out some time in November or December of this year. I also don't think it ships with any MIME info, but I'm not entirely sure how to check.

tomocafe added a subscriber: tomocafe.EditedNov 20 2019, 6:31 PM

See this issue regarding Verilog file extension collision:

.v is not a frequently used extension.

Only the source code of virtually all the kinds of bare metal that "vlang" would even run on... 🤦

Couldn't there be 2 file extensions - like .v and .vlang or something like that?
That way people could generally use .v if they prefer the extension's simplicity or .vlang if whatever software they're using can only recognize .v as Verilog but does have .vlang as the extension for V.

@calebwin I like that. Just like .cpp/.cc in C++.

At least linguist should be able to figure out whether a .v file is Verilog or vlang by scanning the file. That works for GitHub and anything else depending on that. But for VS code, the top extensions for Verilog and vlang use the exact same "fileType" (.v and .vh). vim OOTB will think a .v file is Verilog.

C'est la vie. 🙃

@tomocafe I'm far more concerned about file associations. You wouldn't want to open the files in the wrong program.

JoshStrobl triaged this task as Wishlist priority.Wed, Jan 29, 3:55 PM
JoshStrobl moved this task from Backlog to Awaiting Package Upgrades on the Package Requests board.
JoshStrobl added a subscriber: JoshStrobl.

Moving to Awaiting Package Upgrades per @Jacalz statement "I will package this when I deem it ready to do so".

logTom awarded a token.Mon, Feb 3, 8:12 AM