move function (from language to core)