num_pages: 250
description: Scala is an exciting modern multi-paradigm language for the JVM. You can use it to write traditional imperative object-oriented code. But you can also leverage its higher level of abstraction to take full advantage of modern multicore systems. Programming Scala will show you how to use this powerful functional programming language to create highly scalable highly concurrent applications on the Java Platform.The increasing popularity and availability of multicore processors is creating a whole new set of challenges--although you can enjoy true concurrency you're now faced with higher contention and synchronization issues. Deploying an existing application on a multicore processor may bring out previously hidden concurrency issues. Java's multi-threading facility by itself isn'tenough---it's a very low level abstraction. Instead you need a paradigm that provides a higher level of abstraction to deal with concurrency. It's time to embrace Functional Programming.Scala is a hybrid Object-Oriented/Functional Programming language on the JVM. Using Scala you can create traditional imperative programs intermix them with Java code and at the same time take advantage of higher levels of abstraction. You can use features that lead to concise highly expressive code that remove the pain of dealing with concurrency.Programming Scala will show you the fundamentals of functional programming using Scala. Very quickly you'll learn how this statically typed language can give you dynamic capabilities to create concise scalable highly capable concurrent code.Pragmatic programmers always use the right tool for the job. For concurrent programming on the Java VM Scala is the tool and Programming Scala by award-winning author Venkat Subramaniam is your guide.
language: English
title: Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine
publisher: Pragmatic Bookshelf