Sheep is a programming language created in 2000 by Wouter Van Oortmerssen.
#1723on PLDB | 24Years Old |
— Tree of Pythagoras
— based on an old E example by Raymond Hoving
import “ave”
define pythtree ax:real ay:real bx:real by:real depth:int do
cx = ax-ay+by
cy = ax+ay-bx
dx = bx+by-ay
dy = ax-bx+by
ex = 0.5*(cx-cy+dx+dy)
ey = 0.5*(cx+cy-dx+dy)
c = -1-depth*$100020
ave_line cx cy ax ay c
ave_line ax ay bx by c
ave_line bx by dx dy c
ave_line dx dy cx cy c
ave_line cx cy ex ey c
ave_line ex ey dx dy c
if depth < 12 then
pythtree cx cy ex ey depth+1
pythtree ex ey dx dy depth+1
end
end
width = 640
height = 480
ave_openwindow "Pythagoras Tree" width height 0
pythtree width/2-width/12 height-20 width/2+width/12 height-20 0
ave_update
repeat
until ave_getmessage = 'Q'
Feature | Supported | Token | Example |
---|---|---|---|
Semantic Indentation | ✓ | define pythtree ax:real ay:real bx:real by:real depth:int do cx = ax-ay+by end |