Difference between revisions of "Sandbox"
Jump to navigation
Jump to search
Line 69: | Line 69: | ||
=== Subsection === |
=== Subsection === |
||
==== Subsubsection ==== |
==== Subsubsection ==== |
||
+ | |||
+ | huhu |
||
+ | |||
===== Subsubsubsection ===== |
===== Subsubsubsection ===== |
Revision as of 13:07, 10 March 2010
Feel free to edit as you wish on this page. It is here for you to experiment with WIKI edit syntax.
section
--Lars 11:14, 27 July 2009 (UTC)
Media:Example.oggFile:Example.jpg
Headline text
Italic textBold text
Pavillon | Uge | Uge |
Matrix:
Embedded matrix:
http://cs.pdx.edu/~dick/HaskellSemantics/jpf05.pdf
http://cs.pdx.edu/~dick/HaskellSemantics/Haskell98.pdf
Text taken from http://hpaste.org/3881: this wiki's syntax highlight at least does not garble the source, unlike hpaste's highlight.
module Main where
import Prelude hiding (putStrLn, print)
import System.IO.UTF8
import Data.List (intersperse, find)
type Персонаж = String
type Персонажи = [Персонаж]
едоки :: Персонажи
едоки = [ "дедка", "бабка", "внучка", "жучка", "кошка", "мышка" ]
подходы :: [ Персонажи ]
подходы = scanl позвать [] едоки
where позвать тянущие подмога = подмога:тянущие
построились :: Персонажи -> [ (Персонаж, Персонаж) ]
построились едоки = zip едоки ("репка":едоки)
диспозиции = map (построились.reverse) подходы
описать [] = "Посадил дед репку ..."
описать диспозиция =
unwords ["Взялись:"
, concat $ intersperse ", " $ map за диспозиция
, ". Тянут-потянут -- " ++ result
]
where
за (кто,кого) = кто ++ " за " ++ винительный_падеж кого
винительный_падеж ы = init ы ++ "у"
result = case find ((=="мышка").fst) диспозиция of
Just _ -> "вытянули репку!"
Nothing -> "вытянуть не могут!"
main = mapM_ putStrLn $ map описать диспозиции
Section
Subsection
Subsubsection
huhu