Skip to content

Commit 367520e

Browse files
authored
Add Baklava in Frege (#4207)
1 parent f5a988d commit 367520e

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

archive/f/frege/Baklava.fr

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
module Baklava where
2+
3+
main :: IO ()
4+
main = putStr (baklava "" 20)
5+
6+
baklava :: String -> Int -> String
7+
baklava s n
8+
| n < 0 = ""
9+
| otherwise = s ++ baklavaLine n ++ baklava s (n - 1)
10+
11+
baklavaLine :: Int -> String
12+
baklavaLine n = do
13+
let num_spaces = abs (n - 10)
14+
let num_stars = 21 - 2 * num_spaces
15+
packed (replicate num_spaces ' ') ++ packed (replicate num_stars '*') ++ "\n"

0 commit comments

Comments
 (0)