Page MenuHomeSolus

v
Closed, ResolvedPublic

Description

Name of the software
The V Programming Language

Project/product Homepage
https://vlang.io/

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 - https://vlang.io/compare
Citation:
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. master.zip links will not be accepted.
https://github.com/vlang/v/archive/0.1.21.tar.gz

Event Timeline

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.

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.

See this issue regarding Verilog file extension collision: https://github.com/vlang/v/issues/6

.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.Jan 29 2020, 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".

Sorry, I haven't had the time to look at this until today.
Last time I looked at it I just couldn't get it to work and looking at it today with the quite recent release, I can't even get it to build. At the same time code written in vlang seems to break and needs to be changed to comply with new updates. I no longer have any interest in getting this added to the repository due to all the issues with it, I just don't have faith in it any more. I am sorry...

I am posting my package.yml here if anyone is willing to take the matter further.

Interest in this package is not very high. I guess this can be closed. I'm also no longer on Solus.

JoshStrobl claimed this task.

In case someone wants to pick this up, I suggest doing it after vlang passes 0.3 as right now their release cycle is pretty long (the last release was in January) while breaking changes has been going on.

I think it is best to leave V where it is and not include it in the repository. It is still very much broken and has gained a kind of cult following with a lot of claims about the language that simply isn’t true. See https://christine.website/blog/v-vaporware-2019-06-23 as the first in a series of posts about it.

While I like the fundamental idea of the language and what it is trying to solve (basically Go with safety of Rust), this has unfortunately turned into a very controversial language.