codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
-- Written by Mohit jain -- Read a file and prepend line number to each line module Main where import Control.Monad.State contents = unlines ["line 1", "line 2", "line 3"] main = do (st, ad) <- runStateT(addLineNumber(lines contents)) 0 putStr $ unlines st addLineNumber :: [String] -> StateT Int IO [String] addLineNumber = f where f = mapM g g li = do modify (+1) liftM(h li) get h li ln = show ln ++ ": " ++ li
Private
[
?
]
Run code
Submit