How to combine difference with concatinate object The following creates an object with two slots:
 translate([-40,-40,0]) difference() {
     cube ([90,28,12]);
     translate([12,-.01,5]) cube([12.7,28.02,14.02]);
     translate([65,-.01,5]) cube([12.7,28.02,14.02]);

How can the first main cube be extended to be a complex object of the syntax:
cube([60,20,10],center=true);translate([0,0,5])cube([30,20,10],center=true);

and then use difference to create holes?
The union syntax addresses this:
translate([-40,-40,0]) 
difference() {
    union() {
        cube ([90,28,12]);

        translate([20,0,20]) 
        cube([12,12,12]);
    }

    translate([12,-.01,5]) 
    cube([12.7,28.02,14.02]);

    translate([65,-.01,5]) 
    cube([12.7,28.02,14.02]); 
}

It supports creating an object before the difference syntax is applied.