Skip to content

Update to Scala 2.12 - #3

Open
ExE-Boss wants to merge 3 commits into
masterfrom
scala2.12
Open

ExE-Boss wants to merge 3 commits into
masterfrom
scala2.12

Conversation

@ExE-Boss

Copy link
Copy Markdown
Member

This PR upgrades NOVA-Scala to use Scala 2.12.1

New features:

  • Scala lambdas and Java 8 lambdas are now binary compatible.

Note that in Scala:

val lambda = variable => variable

is still a type of Function1 unless you do

val lambda: java.util.fuction.Function = variable => variable

in which case it becomes a Java 8 Function.
This isn't a problem in Java 8, as Java 8 has to have the type declared.

  • Traits now compile directly to an interface with default methods where possible.

More about Scala 2.12:

http://www.scala-lang.org/news/2.12.0

* are now valid Java 8 functional interfaces, making this class unnecessary boilerplate.
* @author anti344
*/
@Deprecated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason we shouldn't delete this? We don't need backwards compat because we have no releases.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There isn't any specific reason as to keeping it, I don't even use it in #4.

@ExE-Boss ExE-Boss changed the title Upgrade to Scala 2.12 Update to Scala 2.12 Feb 22, 2017
@ExE-Boss ExE-Boss added done and removed ready labels Mar 23, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants