I will just explain part of this circuit. D9 and D10 provide a low cost -1.4 from -5 V. This is needed to reach near 0.00 for LM317 Min. setting. An LED also can be used with proper bias. Note that there is a Temperature Coefficient in ppm, see The Unusual Diode FAQ. but it may not matter upto 8 bits accuracy.
TIP2955, TIP3055 (NPN), TIP2955 (PNP) Complementary Silicon Power Transistors. It is a Darlington, that means good current gain. See Darlington transistor – Wikipedia. When current in R1 10E goes more than 50mA a voltage of 50mA X 10E = 500mV is applied across Emmiter-Base junction. So lower than 500mV no bias the tap is turned off, 500mV-700mV the tap starts turning on depending on type of transistor. The transistor is like a water Tap. So TIP2955 carries the major current burden thru the load allowing LM317 to do the decision making when to turn-on or off. It is analog control, it is not On-Off but linear-proportional. The LM317 is very cool as the burden is passed off to TIP2955 who will need a heatsink to keep going and deliver the power you want.
If you build it and wire it without designing a PCB, then make all wiring and connection very sound. The test of this ability you can know easily, If your project stops working after the last screw of the cabinet is tightened, Then we need to improve.