4 ms·
"bar none" is a little excessive -- Haskell's syntax is probably even cleaner. Compare: 1. map (*2) [1..10] 2. sum [1..1000] -- sum = foldl (+) 0
by ostso 15y ago
"bar none" is a little excessive -- Haskell's syntax is probably even cleaner. Compare:
1. map (*2) [1..10]
2. sum [1..1000]
-- sum = foldl (+) 0
3. any (`isInfixOf` tweet) wordlist
4. fileText <- readFile "data.txt"
fileLines <- lines <$> readFile "data.txt"
5. mapM_ putStrLn . map (\i -> "Happy Birthday " ++ if i == 3 then "dear NAME" else "to You") $ [1..4]
6. (passed, failed) = partition (>60) [49,58,76,82,88,90]
7. -- I avoid XML so I don't know what library you'd use here.
8. minimum [14, 35, -7, 46, 98]
-- minimum = foldl1 min
- draegtun 15y ago"bar none" is a little excessive -- Haskell's syntax is probably even cleaner. Compare And ditto for Io (http://www.iolanguage.com http://www.iolanguage.com): 1. 1 to(10) map(*2) 2. 1 to(1000) asList sum 3. tweet findSeqs( wordlist ) 4. fileText := File with("data.txt") open readLines join fileLines := File with("data.txt") open readLines 5. 4 repeat (i, writeln("Happy Birthday " .. if(i == 2, "dear NAME", "to you"))) 6. list(49, 58, 76, 82, 88, 90) partition(x, x > 60) 7. results := SGML URL with("http://search.twitter.com/search.atom?&q=scala") fetch asXML 8. list(14, 35, -7, 46, 98) min list(14, 35, -7, 46, 98) max Some notes: i) For 1 & 2 remember to have `Range` loaded first. ii). OK I cheated on 6 because there is no partition currently in the Io core lib. Here is a "simple" way I did it for the example: List partition := method ( returnThis := Object clone do ( passed := list() failed := list() ) argSlot := call message argAt(0) cond := call message argAt(1) self foreach (n, newSlot(argSlot asString, n) if (doMessage(cond), returnThis passed append(n), returnThis failed append(n)) ) returnThis )