aboutsummaryrefslogtreecommitdiff
path: root/StringUtils.icl
blob: 1c57a697ea4201cbc41b3c78d0a5322dfc8be65f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
implementation module StringUtils

import StdEnv

strlen :: String -> Int
strlen s = length s`
where
    s` :: [Char]
    s` = fromString s

pad_right :: String Int -> String
pad_right s l
| strlen s >= l = s
| otherwise = s +++ toString (repeatn (l - strlen s) ' ')

pad_left :: String Int -> String
pad_left s l
| strlen s >= l = s
| otherwise = toString (repeatn (l - strlen s) ' ') +++ s

join :: String [String] -> String
join glue [] = ""
join glue [s] = s
join glue [s:ss] = s +++ glue +++ join glue ss