public Type Visit(BoolIneq node) //also for int ineq
 {
     if (Visit((dynamic)node[0]) == Type.INT)
     {
         VisitBinaryOperator("<>", node, Type.INT);
     }
     else
     {
         VisitBinaryOperator("<>", node, Type.BOOL);
     }
     return(Type.BOOL);
 }
        public string Visit(BoolIneq node) //also for int ineq
        {
            var result = "";

            result +=
                Visit((dynamic)node[0]) + "\n"
                + Visit((dynamic)node[1]) + "\n"
                + "\tceq\n"
                + "\tldc.i4.0\n"
                + "\tceq\n";
            return(result);
        }