scalaj: Idiomatic Scala Wrappers for Java Libraries
Among Scala's greatest strengths is its ability to make use of any Java library to write Scala programs. This makes it remarkably easy to quickly tackle real-world problems in Scala. However, Java libraries can't take advantage of some of the powerful features that Scala makes available to library-writers, features such as closures, for-comprehensions, implicit arguments, thunked argument, and co- and contra-variance. The scalaj project aims to provide idiomatic Scala wrappers for Java libraries. Wrappers exist for the Java Collections libraries, the Java Concurrent libraries, and Joda-Time, with more planned. The talk will cover the design and implementation of the above wrappers, as well as general aspects of library design in Scala.