A mutable object is a value on which operations may yield different results when called at different times. Mutable objects are common in imperative programming languages. They reflect the concept of a storage location in a von Neumann style architecture.
Most of Orc's value types are immutable. The standard library provides the following kinds of mutable objects:
Channel: A queue of values
BoundedChannel: A queue of values with a maximum size
Array: A mutable integer-indexed sequence of values
Counter: A value that can be incremented and decremented atomically
Dictionary: A mutable dynamic record