quarter_turn_right(quarter_turn_right(sail_bb))
function turn_upside_down(pic) {
return quarter_turn_right(
quarter_turn_right(pic));
}
function quarter_turn_left(pic) {
return turn_upside_down(quarter_turn_right(pic));
}
stack(rcross_bb, sail_bb);
stack(rcross_bb, sail_bb);
function beside(pic) {
???
}
function beside(pic1, pic2) {
return quarter_turn_right(
stack( quarter_turn_left(pic2),
quarter_turn_left(pic1) ) );
}
var my_cross =
stack(beside(quarter_turn_right(rcross_bb),
turn_upside_down(rcross_bb)),
beside(rcross_bb,
quarter_turn_left(rcrowss_bb)));
function make_cross(pic) {
return stack(beside(quarter_turn_right(pic),
turn_upside_down(pic)),
beside(pic,
quarter_turn_left(pic)));
}
make_cross( make_cross( nova ) )
function repeat_pattern(n, pat, pic) {
if (n === 0) {
return pic;
} else {
return pat(repeat_pattern(n-1, pat, pic));
}
}
repeat_pattern(4, make_cross, rcross_bb)
stack_frac( 1/3, sail_bb, rcross_bb )
function stackn(n, pic) {
if (n === 1) {
return pic;
} else {
return stack_frac(1/n, pic,
stackn(n-1, pic));
}
}
stackn(5,
quarter_turn_right(
stackn(5,quarter_turn_left(nova_bb))))
function n_times_n(n, pic) {
return stackn(n,
quarter_turn_right(
stackn(n,
quarter_turn_left(
pic))));
}
function mystery(x) {
return x * mystery(x - 1);
}
mystery(5)
/
#