Lab supply schematic - negative rail and darlington transistor pair
One specification common to all power supplies is Load Regulation ( usually 1~2%) This means at (max V/max I)=R load the V drops 1~2%. From Ohms Law this means the output impedance of the regulator is equal to the Load Regulation (%)*R(rated)

How do you compute your load Regulation?


Assuming sufficient input power and voltage, examine TL082 schematic and see R out=100+200=300 Ohms. 
We know emitter followers reduce the source impedance by hFE. 
We know that closed Loop negative feedback also reduces Zout by the feedback gain H(s) but if saturated, there is no gain and just Rout of 300 Ohms. 
We also expect hFE to drop rapidly near rated currents but we can examine specs to get an estimate.


Let's look at worst case saturated Op Amp drive output high, then for a 30V/3A supply the rated load is 10 Ohms.
We expect Zout to be &lt;=1% or 0.1 Ohms thus you need a total current gain of 300/0.1=3000=hFE for 1% load regulation at max load.   
The 2N3055 has a hFE of 37 at 3A @2V ( from interpolating ON Semi's figure 5) , so you need only 3000/37=81=hFE for BD139.



hFE=3000. That's why you need a Darlington!

p.s.


Then you guys probably want to know how I can interpolate hFE=38 @ 3A, 2Vce so easily from figure 5.  but that's a different question. 


Of course there will be a tolerance on this.






Conclusion

This design has a "nominal" load regulation &lt;1% at full load with saturated Op Amp Output. (Worst case)

bonus info

The initial assumption was that you can make DIY PSU's cheaper than buying them since you have all the parts. Consider that Laptop chargers are $0.25~$0.50/W and your supply has a rating of 90W and that you have &lt; 50% efficiency at 15V 3A or dumping >50W into the 2N3055.  Also consider that it is possible to easily modify Universal 19V 85W universal laptop chargers to go up to 30V by varying the feedback voltage and checking the Cap rated voltages.  I have done this before, to make an 80W LED dimmer.

You can make it low noise by using a variable SMPS with a good Pi (CLC) filter after it.