anchor.diff:      } else if (isFloat()) {
         return that.isFloat() && getFloatValue() == that.getFloatValue();
       }
  +    throw new Exception("neither int nor float");
     }
     
     bool isInt() { return (tag & NUMBER_MASK) == NUMBER_INT; }
  
positive.code: }
  
  class DefnNode extends Node {
    final int arity;
    final String name;
    final ListNode body;
  
negative.code: }
  
  class ListNode extends Node {
    
    static const int LIST_NIL = 0 << Node.KIND_BITS;
    static const int LIST_CONS = 1 << Node.KIND_BITS;
    static const int LIST_MASK = 1 << Node.KIND_BITS;
  