     # ensure that RHS is treated as a group
     e = f = false
     e and= f or true
-    ok e is false
+    eq e, false
   )()
 
   # compound assignment as a sub expression
   (->
     [a, b, c] = [1, 2, 3]
-    ok (a + b += c) is 6
-    ok a is 1
-    ok b is 5
-    ok c is 3
+    eq (a + b += c), 6
+    eq a, 1
+    eq b, 5
+    eq c, 3
   )()
 
   # compound assignment should be careful about caching variables

    obj ?=
      one: 1

    ok obj.one is 1

    obj and=
      two: 2

    ok not obj.one
    ok obj.two is 2
  )()

)()


## `is`,`isnt`,`==`,`!=`
(->

  # `==` and `is` should be interchangeable.

    a = -> share++ if share is 0
    b = -> share++ if share is 1
    c = -> share++ if share is 2
    ok a() not in [b(),c()]
    eq share, 3
  )()

)()


#### chainable operators
(->

  ok 100 > 10 > 1 > 0 > -1
