I don't see anything wrong with using an Arduino for LED control? Depending on what you want to achieve, it might be overkill or a cheap and easy solution.
Each Arduino (I'm assuming we're talking about 5V ATmega based ones; since they also have some models based on different MCUs, some of them 3.3V) output has an absolute max power rating of 40 mA, with 20 mA being the recommended continuous current (if I remember correctly). You can directly drive just the typical 3mm/5mm LEDs at 20mA. For anything more powerful, e.g. a 12/24V LED strip, one would use a power MOSFET with it's gate driven directly by Arduino's pin, or by an extra BJT or even a gate driver if really fast switching (high PWM frequency) is needed.
One could also hook up an Arduino output pin to switch on/off the constant current LM317 regulator that this post started with. The way to do it would be via a signal MOSFET which would ground the LM317's ADJUST terminal to ground (reducing the Vout to 1.2V and effectively switching off the LEDs). The Arduino can be used to PWM the LEDs for dimming and/or fading.
One benefit of LM317, compared to a large number of more modern regulators and LED drivers, is that it can be used for high-side driving (regulator is between Vcc and the LEDs), e.g. in an automotive situation the LED's negative pole can be grounded directly to the chassis ground. Most constant-current LED drivers (like the AMC7140 I mentioned) are designed as low-side drivers, so that LED's negative can't go to the common ground but must go to the driver.
Considering that Chinese Arduino clones are ridiculously cheap (2-3 euros per piece), it makes sense to use them in all sorts of projects even if it's a complete overkill. Some models are really quite small (Nano, Pro Mini). For many projects, a standalone MCU such as an 8-pin ATtiny25/45/85 is enough and can make for an even smaller board especially if using a SOIC-8 SMD chip. You won't save much money versus using a Nano or a Pro Mini, though. Most of the stuff on an Arduino board is just support circuitry – voltage regulator, USB-to-serial converter and associated caps and resistors. You don't really need that in the final project, it's just useful for fast prototyping, programming and debugging. One example – if you want a PWM controller for LEDs or a motor, you can use a simple NE555 timer-based circuit, or an ATtiny MCU. Circuits for both options are easy to find online. Compare how many more parts (diodes, resistors, capacitors) the NE555 circuit has, compared to ATtiny. At Mouser, ATTINY25-20PU is 0.915 €, NE555P is 0.39 €, so you're saving 50 cents on the IC, but pay a bit extra for all the extra parts, and extra time and board space for soldering it all together. With an MCU you can make adjustments (change the PWM frequency, add fade-in/fade-out for LEDs or soft start for a motor) with just a reprogramming, while with discrete components you have to rework the circuit. Note: I am not advocating to use an MCU in each and every case, for many projects it can also be fun and educational to implement things in the hardware. But with their low prices, reasonable capabilities and ease of prototyping, cheap MCUs are a very attractive choice. There are also nice and cheap boards with 32-bit micros – STM32 and ESP32 for example. With the latter you can even control your lamp with WiFi/Bluetooth, or maybe monitor power consumption and log it to the cloud. The possibilities are crazy and endless, no wonder people are putting these micros in every little thing.