Chapter 15
Types (and Related Concepts)
Much of the power—but also much of the learning curve—associated with modern languages like Scala or Rust—or newer incarnations of earlier languages, like Java—revolves around types. As an interlude between our exploration of functional and concurrent programming language features, this chapter discusses several type-related concepts from a developer’s perspective—no type theory here. Readers are likely to be familiar with common features, such as static and dynamic type checking, abstract data types, subtyping, and polymorphism, but maybe less comfortable with others—for example, type inference, type variance, type bounds, and type classes—that not all programming languages support.
15.1 Typing Strategies ...
Get Functional and Concurrent Programming: Core Concepts and Features now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.