-
Notifications
You must be signed in to change notification settings - Fork 1k
October 2017 SIP minutes draft #907
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
Conversation
|Topic|Reviewers| Accepted/Rejected | | ||
| --- | --- | --- | | ||
| [SIP-34: Right-Associative By-Name Operators](http://docs.scala-lang.org/sips/right-associative-by-name-operators.html) | Adriaan Moors | Accepted | | ||
| [SIP-35: Opaque types](http://docs.scala-lang.org/sips/opaque-types.html) | Sébastien Doeraene | Pending | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@adriaanm please give the feedback to the author
| --- | --- | --- | | ||
| [SIP-34: Right-Associative By-Name Operators](http://docs.scala-lang.org/sips/right-associative-by-name-operators.html) | Adriaan Moors | Accepted | | ||
| [SIP-35: Opaque types](http://docs.scala-lang.org/sips/opaque-types.html) | Sébastien Doeraene | Pending | | ||
| [SIP-33: Match infix and prefix types to meet expression rules](http://docs.scala-lang.org/sips/make-types-behave-like-expressions.html)| Josh Suereth | Pending | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jsuereth please give the feedback to the author (see below what was discussed, if you didn't already take a look (o:
- splicing trees, ending up with owner chains that are correct | ||
- hygiene | ||
- better tools for macro authors, to experiment in a current macro system | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@adriaanm please take a look and let me know if I got all you wanted to come across, thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, reads better than I said it :-)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@adriaanm ohhh, you are being too nice (o: I re-wrote a bit, so it's even better hihihi
https://youtu.be/aIc-o1pcRhw?t=1877 | ||
Agrees both with **Adriaan** and **Olaf**, on one hand "prototyping" in the current macro system can be beneficial e.g automatic owner chain fixer but on the other, scala reflect is fundamentally different from the prototype macro system and even if the tests are run there might be no point to it. | ||
He does agree with **Olaf** that classification of the macros is useful. Concluding that supporting the generation transformation macros shouldn't be that hard, but than the question of how valuable to the community these are needs to be raised. | ||
-- OLAF NEEDS TO RE-WRITE THIS PART -- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
||
- Annotation macros (Community) | ||
**Martin** insists on leaving the paradise functionality in "meta/template scala" but that *scala* assumes only the things that have proven themselves e.g. simulacrum | ||
-- PLEASE ADD THE REASON IF NECESSARY |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Martin insists on leaving the paradise functionality in "paradise scala" and annotations that prove themselves to be essential can be considered for inclusion in the main scala.
- The interaction between type inference and macros (**Iulian**) | ||
quote https://youtu.be/aIc-o1pcRhw?t=3436 | ||
-- OLAF, PLEASE MAKE SURE THE SENSE IS MADE OF WHAT IULIAN SAID -- | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Iulian would like to see addressed the interaction between type inference and macros. This interaction seems to be one of the hard unsolved problems in the current macro system. For example, code that uses shapeless typically has two type parameters where one parameter is unbounded and it's inferred type is guided by the shapeless macro.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@olafurpg THANK YOU! (this goes for all the comments below)
|
||
- Untype trees ?? | ||
https://youtu.be/aIc-o1pcRhw?t=3752 | ||
-- OLAF PLEASE PUT A SENTENCE OR TWO -- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Eugene thinks that mixing of untyped trees and typed trees is one of the hard problems that he believes we only a "few steps" away from solving. He believes solving this problem should be the focus of next month and the fruit of that work will benefit both the new macro system as well as existing scala.reflect macros and open opportunities for more macro applications. Adriaan comments that if we focus on the easy stuff and postpone the hard problems then there is a chance that we will never get to working on the hard problems. Getting some of the hard stuff out of the way now will give us clarity on what we can support in the next year.
Olaf helped changing certain parts
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Excellent work @darjutak.
Dear Reviewer(s),
Please take a close look at the minutes.
My goal is to publish them ASAP so I can proceed with SIP "advertisement""
Olaf will add certain parts that I struggled with, see below.
Thank you in advance!
Darja