;; C.S. Lewis
(define broccoli
'((to broccoli (x y)
(penup)
(left 90)
(forward 50)
(right 90)
(pendown)
(broccoli1 x y)
)
(to broccoli1 (x y)
(if (< x y)
(stop)
((square x)
(forward x)
(left 45)
(broccoli1 (/ x (sqrt 2)) y)
(penup)
(backward (/ x (sqrt 2)))
(left 45)
(pendown)
(backward x)
)
)
)
(to square (x)
(repeat 4
(forward x)
(right 90)
)
)
(broccoli 100 1)
))