Clearer implementation of ->