Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bikeshed better positional argument names post 1.0 #25198

Closed
Ismael-VC opened this issue Dec 19, 2017 · 5 comments
Closed

Bikeshed better positional argument names post 1.0 #25198

Ismael-VC opened this issue Dec 19, 2017 · 5 comments

Comments

@Ismael-VC
Copy link
Contributor

Ismael-VC commented Dec 19, 2017

There are many one letter argument names, that really should be more mnemonic IMHO, things like r/f for replacement, for example. While all objects should be documented someday, good names should be a must for the public Julia API, since method signatures, argument and parameters names are part of this API.

Reference: #25165 (comment)

Positional argument names can be changed at any point without breaking anyone's code. We are at the moment focused on things that need to be changed for 1.0. We can bikeshed better positional argument names until the cows come home post 1.0. - Stefan

@Ismael-VC
Copy link
Contributor Author

Maybe it's time to follow JuliaPraxis guidelines?

And expand those guidelines as needed.

@StefanKarpinski StefanKarpinski added this to the 1.x milestone Dec 19, 2017
@Ismael-VC
Copy link
Contributor Author

Ismael-VC commented Dec 19, 2017

@ararslan The JuliaPraxis guidelines are just a suggestion. But I wonder what do you disagree with. JuliaPraxis guidelines? Enforcing any guidelines? Renaming these variables?

I'm all in for consistency and good naming practices, I'm OK with whatever the guidelines end up being as long as we do have guidelines and we enforce it's use, specially in base Julia (specially since we still have many undocumented code), even if this cryptic variables are properly documented.

@ararslan
Copy link
Member

JuliaPraxis guidelines are not official. Any discussion regarding those guidelines should happen on that repo.

@Ismael-VC
Copy link
Contributor Author

Ismael-VC commented Dec 20, 2017

That is true, but I think the very purpose of JuliaPraxis is to become something we all agree becomes part of an official guideline at some point.

What are the official guidelines that we can discuss here then? There is the "official" style guide, but it doesn't mention many things that JuliaPraxis does.

And some minor stylistic conventions here (which should probably be in the style guide instead of scattered):

At least I think the intention of @JeffreySarnoff and the people participating in JuliaPraxis discussions was never to start a separate Style guide just for the sake of having something different than what is told in the links above. On the contrary, I believe JuliaPraxis was born precisely from the need of having some place to discuss this bike shedding in order to improve the "official" style stuff without nagging everyone else with non priority "noise".

If the problem is that the style guide is not in this repository, then it would be easy to add those documents here, the issue remains the same, we need to discuss and enforce the agreed official guidelines, sooner or later.

This kind of things may not impact something as crucial as performance, so it's not top priority, I get it, but they impact the users and their development time IMO.

As a mater of fact I'd rather have those style guides here and abandon further discussions on JuliaPraxis, than having JuliaPraxis exist but be considered "not official" and thus being ignored,

Currently what is considered to be "julian" is exported from this repo to the community, though some bad practices are being exported too.

@JeffreySarnoff
Copy link
Contributor

JeffreySarnoff commented Dec 21, 2017

they are not official -- they exist to encourage something official, and to contribute to that (they represent the views of a dozen or so of the more involved contributors at the time)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants