In the modeling rationale associated with the Beta language theres is a fundamental distinction between objects and values.
An object was supposed to represent substance inf the form of physical material of the application domain. Values on the other hand represent measurable properties of the substance.
In many OO languages, values are objects - the value 7 is thus an object and variable having the value 7 is conceptually referring to this object. In practice this is of course not implemented this way since it would be all too inefficient. Conceptually we find it problematic to consider a value like 7 to be an object - objects have a physical location in time and space - so where is the object 7 located? This question is difficult to understand from a conceptual point of view. Especially in a distributed context with many nodes. Smalltalk was the first language to present this perspective.
In Beta, values and measurable properties are described by the enter/exit-part of an object. In qBeta values are represented by immutable objects.
Ole-Johan Dahl: “To summarize, values are timeless concepts, like the number 3, and must be represented in a computer by immutable data structures.”
The viewpojnt of Dahl is also expressed in the Beta book - values must be represented as objects or other data structures of the program execution.
The number seven is thus not a specific object somewhere in the program execution - instead several (immutable) objects may represent the value 7.
It may seem a subtle difference from the Smalltalk point of view. However, we think that conceptually there is a huge difference between considering the number 7 to be an object and immutable objects representing the value 7.In everyday life there are numerous representation of the value 7 - on paper, in Excel sheets, blackboards, etc. There value 7 is not an object somewhere in the world.
MacLennan: Objects and values, ACM SIGPLAN Notices, is an excellent article describing the difference between objects and values.