some semantics and cal.ml stuff