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

Name this language! #61

Open
dgkf opened this issue Oct 8, 2023 · 13 comments
Open

Name this language! #61

dgkf opened this issue Oct 8, 2023 · 13 comments
Labels
meta-question Further information is requested type-design Discussion regarding design of enhancements or project at large

Comments

@dgkf
Copy link
Owner

dgkf commented Oct 8, 2023

R is just too ambiguous to be used solo, and calling it dgkf/R feels too vane. I think a rebrand is needed to help give this project a bit of its own identity.

Just to lay out some general themes that resonate with me with this project and its identity.

What is part of the language identity

  • developed publicly and visibly
  • is developed first and foremost as an educational and exploratory process, with the hopes of building a community of language enthusiasts
  • embraces what makes R unique - namely lisp-y metaprogramming wrapped in a more familiar data science shell
  • hopes to learn from and reinforce what has made R successful - particularly it's fluency for providing DSLs with enough guardrails to keep the core language familiar. There are good reasons why tidyverse reproductions have sprung up in a number of languages.

What isn't part of the identity

  • rust, although a language I enjoy writing in a lot, is not central to the identity of this project
  • Although I'm fine with allusions or homages to R, "beating" R is not part of the identity
@dgkf dgkf added meta-question Further information is requested type-design Discussion regarding design of enhancements or project at large labels Oct 8, 2023
@dgkf dgkf pinned this issue Oct 8, 2023
@sebffischer
Copy link
Collaborator

sebffischer commented Oct 11, 2023

I think a natural name for this would be S -> R -> Q. Coincidentally the .qmd and the .q file would be just like the .rmd and the .r files :)

Btw, I think the project is very interesting and I am hoping to contribute in the future!

@dgkf
Copy link
Owner Author

dgkf commented Oct 11, 2023

I think a natural name for this would be S -> R -> Q

This definitely is a contender. qmd is currently used by quarto, but I think that's the natural successor to rmd anyways and is language agnostic. The name is brilliant from a historical perspective and definitely maintains the S/R legacy - I think the arguments for are pretty clear. As I've naturally given this one a bit of thought as well, I'll just lay out what I see as potential downsides:

  • R suffers from being a niche language with a single-letter name, making search-ability difficult at times, and often using the rstats moniker, even though it's definitely used more broadly than just stats these days. rlang is equally ambiguous now as both a moniker and a package. Ultimately search-ability is a major part of the accessibility of a language, so the decision to go with Q needs to keep this in mind.
  • Q is often used for "quantum" computing tools, and there's already a Q# available on Azure for quantum stuff.
  • There's already a Q, although it seems quite niche to me. It's sold commercially, which means we'd probably be entrenched in some legal issues and I'm not sure I care enough to fight that battle. I'd probably have to get in contact with this company first.

Although I think the first point is the most regarding accessibility is most important, the more banal latter two are probably the bigger threat to using the name since there is commercial interest in it. I do like the idea of keeping the q around in some form or another as an homage to the language's heritage.

Btw, I think the project is very interesting and I am hoping to contribute in the future!

Wonderful ❤️ ! I'm looking forward to it! Whenever you're ready, I'd be happy to help get you up to speed with some good first issues and to slowly get you onboarded to the internals.

@sebffischer
Copy link
Collaborator

I have thought a bit about possible names for this language and something that I like is "quasi":

  • it starts with a q
  • the language is "quasi" R,
  • it is kind of a cool word!
  • quasi quotation is an important feature of the language
  • I did not find a language that already uses this name
  • it is also reasonably googleable I would think

Another name that I like and which starts with Q would be "Quill", but there already is a project here (https://github.com/quill-lang/quill).

Also, thanks a lot for offering your help to getting me started! :) I am still in the process of learning rust but I would now like to start working on this project :) I thought I would start with giving this issue a try if this is fine with you?

@sebffischer
Copy link
Collaborator

sebffischer commented Mar 14, 2024

New idea: what about calling it revolve (r evolve)

@dgkf
Copy link
Owner Author

dgkf commented Mar 14, 2024

New idea: what about calling it revolve (r evolve)

I love it! I think this is the best idea so far!

@sebffischer
Copy link
Collaborator

Awesome! :) Should we go for it or do you want to wait for more suggestions / people to chip in?

@dgkf
Copy link
Owner Author

dgkf commented Mar 15, 2024

I'd still like to hold off on a rebranding. For now, I think leaving it as "R" is still good for attracting the R crowd's interest. Even though there are a few deviations, it still feels like "R" to me.

Before I think it truly deserves an identity of its own, I think it needs a defining feature (independent of what R offers) and remotely comparable performance. Until then, I think it's better to make it feel familiar.

I'd characterize a defining feature is something that drastically changes the way you approach solving a problem. This could be something like the static typing, multithreading, or feature-gated metaprogramming - things that fundamentally change what the language is capable of. I hope we get there some day!

I'm also keeping my eye on a bunch of other up-and-coming high-level rust-inspired languages, which might eventually fill the gap that I'm trying to fill here. I have yet to see one that comes close to R's metaprogramming tools, though.

@dgkf
Copy link
Owner Author

dgkf commented Mar 29, 2024

Been thinking about other alternative words that start with "r" in the same spirit as "revolve" and just wanted to track a few:

  • revolt: both in terms of "revolution" and the N64 racer
  • rebar: I like this one because I think of R as a "glue" language, but I always find "glue" to be a bit dismissive and I think "rebar" is a more apt description of the role that I see it having. Also is metal-y as a bit of an homage to it's rust foundation, though admittedly this is an afterthought.

@sebffischer
Copy link
Collaborator

sebffischer commented Mar 29, 2024

I like rebar! The interpretation would not only make sense to describe the functionality of the language itself, but in my opinion even partially express the relationship between the "new" language and R (I am not sure whether this is what you meant), which I think includes trying to give the great ideas from R more structure / support.

On a side note: I just hope that translating the language will not become part of the localization, because I can tell you, "Betonstahl" does not sound like a programming language in german 😅

@sebffischer
Copy link
Collaborator

sebffischer commented Apr 4, 2024

Just to put one more name out there: What about "quarry".
It is somehow similar (in terms of letters) to a couple of concepts that this language is about:

  • it almost contains the word array
  • it is reasonably similar to the word query
  • it contains "ry" ("R like")
  • it starts with a q

@jemus42
Copy link

jemus42 commented Jul 29, 2024

"quarry" sounds like you're describing this as "quasi R-y" but are in a hurry, which makes me like it 😎

@dgkf
Copy link
Owner Author

dgkf commented Jul 29, 2024

"quarry" sounds like you're saying describing this as "quasi R-y" but are in a hurry, which make me like it 😎

Ah! I don’t think I fully understood what @sebffischer was first suggesting. I didn’t pick up on the “ry” being “R-y”.

Maybe something like qry? I like this because the command would still be very short, it can be read aloud as “query”/“quarry” (or “cry” if things are broken I guess 😅). And most importantly, I’m sure it is far more searchable.

Not sure if I’m totally sold on the shorthand name, but I do want a language name more searchable than “R”

@sebffischer
Copy link
Collaborator

sebffischer commented Jul 30, 2024

Not sure if I’m totally sold on the shorthand name, but I do want a language name more searchable than “R”

If we go with the shorthand variant (and I like that there are different ways to pronounce it) I think we should still provide an "official" pronunciation. A "CRAN" situation (KRAN vs see-RAN) should probably be avoided.

"quarry - a language for data mining" could also be a slogan 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
meta-question Further information is requested type-design Discussion regarding design of enhancements or project at large
Projects
None yet
Development

No branches or pull requests

3 participants