8.16.0.4

2 Common Run-Time Representations🔗ℹ

Rhombus and Racket share the same or related representations for many basic forms of data:

In many other cases, the Rhombus representation of an entity is a wrapper on a Racket representation. For example, a Rhombus Thread object wraps a Racket thread object. In those case, a common convention within Rhombus is to provide access to the Racket representation through a handle property, and sometimes a from_handle function is provided to construct a Rhombus object wrapper for a suitable Racket value.

Rhombus wrappers enable a dynamic . operation to find methods and properties. Although dynamic . works on some kinds of Racket values without a wrapper, such as strings and lists, it relies on built-in support by the . operator. Rhombus has no safe and composable way to extend that built-in set.