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

SI-4427 document package objects appearing in implicit scope #3915

Closed
wants to merge 1 commit into from

Conversation

Blaisorblade
Copy link
Contributor

The implicit scope of a.A includes package object a. Document this, following the text posted by @odersky in the ticket (hoping my manual diff is correct).

Fixes #4427.

Warning: please make sure 2.11.x is the branch where I should send this.

The implicit scope of a.A includes package object a. Document this.

Fixes scala#4427.
@Blaisorblade
Copy link
Contributor Author

The failure is spurious and repeatable (see #3903 (comment) and https://groups.google.com/d/msg/scala-internals/XKJa5WffDXg/LuRgQ4KPSsoJ).

@som-snytt
Copy link
Contributor

Ever since Adriaan updated the kitteh script to rebuild the implementation automatically incorporating deltas from the spec, you can't change punctuation without a test breaking.

Unfortunately, kitteh updates the compiler based on its interpretation of the spec. And it gets smarter with each change, so that eventually it learns to just ignore anything you put in. Usually it just tweaks the error messages a bit so you think you've achieve some clarity. Recently it added some Xlint levers.

@Blaisorblade
Copy link
Contributor Author

Ever since Adriaan updated the kitteh script to rebuild the implementation automatically incorporating deltas from the spec, you can't change punctuation without a test breaking.

I didn't realize you were writing science fiction until that point 😆

@som-snytt
Copy link
Contributor

Not sure it was clear that, on the ticket, I was quoting the current spec, after the bullet list.

If you think that line is unclear or duplicates your change, you might want to amend it. I couldn't find where it crept into the @adriaanm edition. I'm not up to digging for bones.

@Blaisorblade
Copy link
Contributor Author

Not sure it was clear that, on the ticket, I was quoting the current spec, after the bullet list.

Aaaaah!! No, I completely didn't realize, sorry. I'd also have appreciated a quote tag, which I added (though I also hate using JIRA's markup) - I hope that was okay.

On what's best to write

One can argue that the current language exposes an implementation detail.
Or that the current language uses (in an unstructured way and only here) an elaboration semantics, that is it documents how constructs are desugared to core constructs. However, things are much more complicated, so I'm against doing this just locally, and I still prefer Odersky's language.

I'll take a closer look later.

@lrytz
Copy link
Member

lrytz commented Aug 7, 2014

Thanks @Blaisorblade & @som-snytt for tracking down the details - in order not to duplicate things, let's keep the spec the way it is now (the existing clarification is in the same paragraph as the one added by this PR). I'm closing this PR and the related issue.

@lrytz lrytz closed this Aug 7, 2014
@som-snytt
Copy link
Contributor

Yeah, jira markup deserves all the hate emails it gets. I only know {code}; anything else and I have to scroll through the help pop-up. Thanks for fixing it.

On the language, "internally represented" or whatever it is, I was going to make a pertinent joke about "it's how the spec represents it internally to itself" or whatever, but obviously the jokey wording didn't pop into my head.

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