Here is an example that can clarify the situation. First you need to import the Reader module:
import Control.Monad.Reader
Now let's define some data structure (which we are going to use to store the name and age)
data Config = Config { name :: String, age :: Int }
, ( Reader Config (String, Int), , ). ( Config), -.
example = do
c <- ask
return ("Hello " ++ name c, 2 * age c)
. do . Config, ( read, _age, String, Int, Config) example , runReader. , .
main = do
putStrLn "Enter your name:"
_name <- getLine
putStrLn "Enter your age:"
_age <- getLine
let config = Config _name (read _age)
let result = runReader example config
putStrLn $ fst result
putStrLn $ "Twice your age is: " ++ show (snd result)