Scala was named after its purpose: to be a scalable language. Although scalable can refer to many things, including servers, users, and data, Scala’s real mission is to scale with the needs of the developer. Whether writing a script, a mobile application, or a distributed system, Scala is meant to flexibly support these needs with a familiar syntax and feature set. Scala provides a rich and safe, yet nonintrusive, type system, compile-time macros, a huge number of open source libraries, a flexible mix of functional and object-oriented paradigms, and a rapidly growing community.
Modern web development is very difficult. Developers must choose to either duplicate similar logic or try to find a language flexible enough to be both a good frontend and backend choice. Scala.js fits the bill perfectly. Server code can run multithreaded, client code can have strong type guarantees, and most importantly it can be the same code.
Paul Draper introduces attendees to Scala and explores how Scala.js works, covering its advantages, library management, and JS interop before looking to the future of Scala.js.
Paul Draper is a senior software developer and team lead at Lucid Software, where he works on visual, interactive, and high-performance office applications on the Web. Paul believes that every traditional desktop computing task will one day be done better on the Web due to its cross-platform, ubiquitous, and collaborative nature. A self-described “language nut,” he has a strong interest in languages, frameworks, and toolchains that get out of the way of creating awesome experiences.
©2016, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org