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

Remove Manifest and friends #6745

Closed
wants to merge 2 commits into from
Closed

Conversation

smarter
Copy link
Member

@smarter smarter commented Jun 6, 2018

It's been deprecated for 5 years, it's time to say good bye 👋 .

This PR cannot be merged until we have a STARR that contains #6742

@scala-jenkins scala-jenkins added this to the 2.13.0-M5 milestone Jun 6, 2018
@mkeskells
Copy link
Contributor

you will mess up all of the benchmarks @retronym looks after by deleting the code to make scalac compiling faster 😆

@xeno-by
Copy link
Contributor

xeno-by commented Jun 6, 2018

Manifests are part of the language specification: https://www.scala-lang.org/files/archive/spec/2.12/07-implicits.html#manifests. I suggest that their removal goes through the SIP process.

@dwijnand
Copy link
Member

dwijnand commented Jun 6, 2018

It's been deprecated for 5 years, it's time to say good bye 👋 .

When were they deprecated? Last I knew (6 years ago) they were un-deprecated in #1455 (for 2.10.0).

@smarter
Copy link
Member Author

smarter commented Jun 6, 2018

Manifests are part of the language specification: https://www.scala-lang.org/files/archive/spec/2.12/07-implicits.html#manifests. I suggest that their removal goes through the SIP process.

No objection from me.

When were they deprecated? Last I knew (6 years ago) they were un-deprecated in #1455 (for 2.10.0).

Indeed. I guess I assumed they were, and in practice they pretty much are.

@dwijnand
Copy link
Member

dwijnand commented Jun 6, 2018

I guess I assumed they were, and in practice they pretty much are.

They're pretty much in use, though, as well.. I don't think we can just drop them in 2.13.0-M5.

@smarter smarter force-pushed the remove/Manifest branch 2 times, most recently from 4b13891 to 48c2b25 Compare June 6, 2018 21:45
@retronym
Copy link
Member

retronym commented Jun 7, 2018

The problem with removing Manifests is that the replacement (TypeTag) is extremely heavyweight and only provided in an experimental Scala module (scala-reflect).

@lrytz
Copy link
Member

lrytz commented Jun 7, 2018

We also need to look at this in the context of Scala 3 - what's going to happen to scala.reflect? We should make that plan first before taking any actions.

@lrytz
Copy link
Member

lrytz commented Jun 8, 2018

Closing, as this needs discussion / decission outside the PR queue.

@lrytz lrytz closed this Jun 8, 2018
@smarter
Copy link
Member Author

smarter commented Jun 8, 2018

Closing, as this needs discussion / decission outside the PR queue.

Can we define one place for such discussion? Otherwise it's likely to spread randomly.

@lrytz
Copy link
Member

lrytz commented Jun 8, 2018

I really think the bigger underlying topic is scala.reflect vs Scala 3 - are there any past discussions on that topic?

@dwijnand
Copy link
Member

dwijnand commented Jun 8, 2018

@odersky mentions in https://contributors.scala-lang.org/t/what-kinds-of-macros-should-scala-3-support/1850/14:

The future Scala 3 macro design is intended to replace the existing def macros and the scala.reflect infrastructure.

But I don't think creating a new thread in https://contributors.scala-lang.org/ that's specifically about Manifest would wrong. We can then link it to or from other locations.

@smarter
Copy link
Member Author

smarter commented Jun 8, 2018

I think it's pretty clear that scala.reflect if it exists in Scala 3 won't be recognizable since the current API exposes implementation details.

@dwijnand
Copy link
Member

dwijnand commented Jun 8, 2018

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

Successfully merging this pull request may close these issues.

8 participants