次の定型コードを削減したいと思いますが、レンズ (Data.Label) を使用しません。どうすればこれを行うのが最善でしょうか?
data Qcfg = Qcfg { qthresh :: Int, tdelay :: Rational, cwpsq :: TPSQ, cwmap :: TMap, cwchan :: TChan String }
getQthresh = do
c <- ask
return (qthresh c)
getDelay = do
c <- ask
return (tdelay c)
getTMap = do
c <- ask
return (cwmap c)
getTPsq = do
c <- ask
return (cwpsq c)
getTChan = do
c <- ask
return (cwchan c)