## 3.1 Values in General

The module `Value` contains procedures that can operate on many kinds of values.

`=`

  > `{Value.'='` `X``` `Y``}`

  unifies the values of the variables `X` and `Y`.

`==`

  > `{Value.'=='` `X``` `Y``` `?B``}`

  tests whether `X` is equal to `Y`. The test may suspend.

`\=`

  > `{Value.'\\='` `X``` `Y``` `?B``}`

  tests whether `X` is not equal to `Y`. The test may suspend.

`toVirtualString`

  > `{Value.toVirtualString` `X``` `+DepthI``` `+WidthI``` `?VS``}`

  returns a virtual string describing the value of `X`. Note that this does not block on `X`. The values of `DepthI` and `WidthI` are used to limit output of records in depth and width respectively.