Glossary

$tag

A method declared by the ScalaObject trait and used internally by Scala. It takes no arguments and returns an integer. It is currently used to optimize pattern matching, but it may be removed in a future release of Scala. While normally invisible to Scala code (it is generated automatically by the compiler), Java code that extends some Scala traits and classes may need to implement this method.

Abstraction

The outwardly visible state, state transformations, and other operations supported by a type. This is separate from the encapsulated implementation (fields and methods) of the abstraction. Scala traits and abstract classes are often used to define abstractions and optionally implement them. Concrete types provide complete implementations.

Abstract Type
  1. A class or trait with one or more methods, fields, or types declared, but undefined. Abstract types can’t be instantiated. Contrast with concrete types.

  2. A type declaration within an class or trait that is abstract.

Actor

An autonomous sender and receiver of messages in the Actor model of concurrency.

Actor Model of Concurrency

A concurrency model where autonomous Actors coordinate work by exchanging messages. An Actor’s messages are stored in a mailbox until the Actor processes them.

Annotated Type

Any type that has one or more @ annotations applied to it.

Annotation

A way of attaching “metadata” to a declaration that can be exploited by the compiler and other tools for code generation, verification and validation, etc. In Scala ...

Get Programming Scala 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.