changeset 1343:379d72ea85b6

<GreyKnight> fetch http://sprunge.us/ZJCe
author HackBot
date Thu, 10 Jan 2013 13:24:00 +0000
parents 4b8ca994f6de
children 972124ab193f
files ZJCe
diffstat 1 files changed, 24 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ZJCe	Thu Jan 10 13:24:00 2013 +0000
@@ -0,0 +1,24 @@
+import Data.List
+import Data.Char
+
+standardURL = "http://esolangs.org/wiki/Main_Page"
+
+
+replace :: (Eq a) => [a] -> [a] -> [a] -> [a]
+replace _ _ [] = []
+replace old new (y:ys) =
+  case stripPrefix old (y:ys) of
+    Nothing -> y : replace old new ys
+    Just ys' -> new ++ replace old new ys' 
+
+applyGenTemplate :: String -> String -> String -> String  -- nick url template -> result
+applyGenTemplate nick url template = nick ++ ": " ++ replace "^" nick (replace "@" url template)
+
+applyTemplate :: String -> String -> String -- nick template -> result
+applyTemplate nick template = applyGenTemplate nick standardURL template
+
+
+main = do
+	template <- getLine
+	putStrLn (applyTemplate nick template)
+