I have been programming for 30 years and, while I don't consider myself a great programmer, I don't like large functions. In my experience they usually fail at clearly expressing intent and therefore make the code a lot harder to reason about. There are, of course, exceptions to this.
The 600 isn't a "repackaged Amiga 1000" or a "cut-down version of the Amiga 500". It didn't make sense in the line-up when Commodore introduced it, but it's definitely a step-up from the A1000 and A500. Having the Enhanced Chip Set[0] meant getting the Productivity video modes on a multisync monitor.
The internal ATA controller was also a big enhancement as compared to the A500 and A1000, too. Laptop IDE/ATA drives were getting pretty common. When equipped with a hard disk it was vastly more portable than an A500 (w/ a "sidecar" hard disk drive module).
Having the built-in color composite video output was a "win" for just plugging it into a TV or VCR. Again, that helped with portability as compared to an A500.
As a retro machine it is a cute little machine. The community has definitely stepped-up with enhancements for the A600, though.
Let me know if you have any questions that aren't answered there!