The Intersection_For_Loop is geared specifically for constructing intersections of polyhedra created inside a loop. `
$fn=30;
intersection_for(i=[0:1]){
translate([0, 0, 0.8 * i])
sphere(r = 1);
}
Confusingly, wrapping a for loop in an intersection creates a union.
$fn=30;
intersection(){
for(i=[0:1]){
translate([0, 0, 0.8 * i])
sphere(r = 1);
}
}