use 'reader' instead of (<$> ask)