redo, an alternative to make