読者です 読者をやめる 読者になる 読者になる

続々・縦書き

Haskell

続・縦書きのさらに続き


Arrowで書き直してみた

import List
import Control.Arrow

main = getContents >>= arr (lines >>> reverse >>> normalize >>> transpose >>> unlines >>> putStrLn)

-- 長さを同じにする
normalize = (maximum . map length &&& map (++ repeat ' ')) >>> uncurry (map . take)