<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=HaskellExercises%2FWikibook</id>
	<title>HaskellExercises/Wikibook - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=HaskellExercises%2FWikibook"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=HaskellExercises/Wikibook&amp;action=history"/>
	<updated>2026-05-14T23:09:24Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=HaskellExercises/Wikibook&amp;diff=32088&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:23, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=HaskellExercises/Wikibook&amp;diff=32088&amp;oldid=prev"/>
		<updated>2021-02-07T05:23:22Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;http://en.wikibooks.org/wiki/Haskell 을 따라가다 보면 나오는 연습문제&lt;br /&gt;
----&lt;br /&gt;
= Recursion =&lt;br /&gt;
 module Recursion where&lt;br /&gt;
 &lt;br /&gt;
 factorial 0 = 1&lt;br /&gt;
 factorial n = n * factorial (n-1)&lt;br /&gt;
 &lt;br /&gt;
 --이름 충돌로 replication 대신에 rep&lt;br /&gt;
 rep :: a -&amp;amp;gt; Int -&amp;amp;gt; [a]&lt;br /&gt;
 rep a 0 = []&lt;br /&gt;
 rep a n = a:rep a (n-1)&lt;br /&gt;
 &lt;br /&gt;
 --이름 충돌로 !! 대신에 i&lt;br /&gt;
 i :: [a] -&amp;amp;gt; Int -&amp;amp;gt; a&lt;br /&gt;
 (i) list 0 = head list&lt;br /&gt;
 (i) list index = (i) (tail list) (index-1)&lt;br /&gt;
 &lt;br /&gt;
 --이름 충돌로 zip 대신에 z&lt;br /&gt;
 z :: [a] -&amp;amp;gt; [b] -&amp;amp;gt; [(a,b)]&lt;br /&gt;
 --z _ [] = []&lt;br /&gt;
 --z [] _ = []&lt;br /&gt;
 z xs [] = []&lt;br /&gt;
 z [] ys = []&lt;br /&gt;
 z (x:xs) (y:ys) = (x,y):z xs ys&lt;br /&gt;
&lt;br /&gt;
= List =&lt;br /&gt;
 module List where&lt;br /&gt;
 takeInt     :: Int -&amp;amp;gt; [Int] -&amp;amp;gt; [Int]&lt;br /&gt;
 takeInt 0 xs = []&lt;br /&gt;
 takeInt n (x:xs) = x:takeInt (n-1) xs&lt;br /&gt;
 &lt;br /&gt;
 dropInt     :: Int -&amp;amp;gt; [Int] -&amp;amp;gt; [Int]&lt;br /&gt;
 dropInt 0 xs = xs&lt;br /&gt;
 dropInt n (x:xs) = dropInt (n-1) xs&lt;br /&gt;
 &lt;br /&gt;
 sumInt     :: [Int] -&amp;amp;gt; Int&lt;br /&gt;
 sumInt [] = 0&lt;br /&gt;
 sumInt (x:xs) = x + sumInt xs&lt;br /&gt;
 &lt;br /&gt;
 scanSum     :: [Int] -&amp;amp;gt; [Int]&lt;br /&gt;
 scanSum [i] = [i]&lt;br /&gt;
 scanSum (i1:i2:ints) = i1:scanSum (i1+i2:ints)&lt;br /&gt;
 &lt;br /&gt;
 diffs       :: [Int] -&amp;amp;gt; [Int]&lt;br /&gt;
 diffs [i] = []&lt;br /&gt;
 diffs (i1:i2:ints) = sub i2 i1:diffs (i2:ints)&lt;br /&gt;
                     where sub a b = a - b&lt;br /&gt;
&lt;br /&gt;
= A Miscellany of Types =&lt;br /&gt;
 myand       :: [Bool] -&amp;amp;gt; Bool&lt;br /&gt;
 myand (b:[]) = b&lt;br /&gt;
 myand (b:bs) = (&amp;amp;amp;&amp;amp;amp;) b $ and bs&lt;br /&gt;
 &lt;br /&gt;
 myor        :: [Bool] -&amp;amp;gt; Bool&lt;br /&gt;
 myor (b:[]) = b&lt;br /&gt;
 myor (b:bs) = (||) b $ or bs&lt;br /&gt;
 &lt;br /&gt;
 myand2 bs = foldl (&amp;amp;amp;&amp;amp;amp;) True bs&lt;br /&gt;
 myor2 bs = foldl (||) False bs&lt;br /&gt;
 &lt;br /&gt;
 maxium list = foldl1 max list&lt;br /&gt;
 minimub list = foldr1 min list&lt;br /&gt;
&lt;br /&gt;
= More on Functions =&lt;br /&gt;
 lambda1 xs = map (\x -&amp;amp;gt; x*2 + 3) xs&lt;br /&gt;
 original1 xs = map f xs&lt;br /&gt;
                 where f x = x * 2 + 3&lt;br /&gt;
 &lt;br /&gt;
 lambda2 xs = foldr (\x y -&amp;amp;gt; read x + y) 1 xs&lt;br /&gt;
 original2 xs = let f x y = read x + y&lt;br /&gt;
                 in foldr f 1 xs&lt;br /&gt;
----&lt;br /&gt;
[[BeginningHaskellLanguage]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>