Pre SIP: scala-cli as new scala command

Hello Contributors!

We are discussing the directives syntax after the magic comment //> related to SIP-46 in this discussion and I would like to summarize the discussion here to get your feedback.

Problem and trade-off

A. The current keyword using in directives after //> overlaps with the Scala keyword, while having another different meaning.

B. Changing the keyword now affects tooling and people’s code but changing it after that SIP-46 is elevated from “experimental” to “stable” may be even worse. Depending on how fast the decision process connected to SIP-46 is governed, we may risk a delay in introducing scala-cli as the new Scala.

Proposed solution

Change the keyword using to use in directives for scala-cli after //> and allow for a “grace-period” when the old keyword still works and deprecation warnings are given etc.

Questions to you

  1. Do you think we should change the keyword using to something else to avoid the overlap with Scala’s using?

  2. Are you fine with use as keyword instead of using after //> ?

By this post I risk opening up to “eternal bike-shedding”, as what is the “best” keyword is a subjective matter. What we can say more objectively is that we want it short and that it should not overlap with other keywords, and the proposed use instead of using fulfills that.

If we can settle on the use keyword fast, while agreeing that the change solves a real problem, there does not have to be much of a delay.

5 Likes