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

Proposal: Use ellipsis to define operator precedence/group expressions #328

Open
holly-cummins opened this issue Jan 10, 2024 · 1 comment
Milestone

Comments

@holly-cummins
Copy link

Satriani has some difficulty parsing My world is nothing without your love (#326). I think this may be, under the covers, a precedence thing, because it gets parsed as "my world is nothing" and then the "without your love" is hanging around on the end and confusing the parser.

Parentheses can't be used to group arithmetic expressions, because they're used for comments. But what about using ellipsis for grouping? Ellipsis are often used in song lyrics, and they seem to map nicely to the intention here. For example:

My world is ... nothing without your love

@dylanbeattie
Copy link
Collaborator

So, this is one of the many ways in which using is to denote a poetic literal turns out to have been a horrible mistake, because you're absolutely right - once the parser sees My world is it consumes the rest of the line as poetic literal digits and there's no way to use an expression as part of the assignment.

What I should have done was use a keyword such as like to prefix a poetic literals - although I also like the idea of using punctuation to denote the end of a literal; a single point . is used as a decimal separator but no reason that other punctuation marks couldn't indicate the end of a poetic literal expression.

My world is nothing initialises my_world to 0
My world is nothing without your love - subtraction expression
My world is like a big scary hamster - initialise my_world to 1357

This would also mean you could use poetic literals in comparisons:

If the moon is like a crazy diamond

It'd be a breaking change, but it's probably time for Rockstar 2.0 anyway... 🤘🏽

@dylanbeattie dylanbeattie added this to the 2.0 milestone Feb 27, 2024
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

2 participants