rem: r = eval1 ();
add: r = eval1 (evaluate & null (l));
context: eval (void){  VALUE *l;  VALUE *r;#ifdef EVAL_TRACE  trace ("eval");#endif  l = eval1 ();  while (1)    {      if (nextarg ("|"))	{	  r = eval1 ();	  if (null (l))	    {	      freev (l);	      l = r;	    }	  else	    freev (r);	}      else	return l;    }}