Experimenting with program structure