I'm not a Lisp person, but I understand that meta-programming is an integral part of Lisp. On the other hand, parsing comments to extract dependencies is special-casing shell comments for the needs of the init system. That's what I would call a hack.
As for matching the philosophy of the operating system, you go from one process which launches scripts which in turn launch programs, to one process which reads a configuration file in order to launch programs. That's a simplification. It also means that you no longer have an /etc/init.d filled with executable files. And the underlying mechanism used by systemd to order dependencies (blocking on sockets) particularly fits the Unix philosophy.
Mind you, I'm not really comfortable with systemd overtaking udev and syslog (resistance is futile...) but that's a different debate.
As for matching the philosophy of the operating system, you go from one process which launches scripts which in turn launch programs, to one process which reads a configuration file in order to launch programs. That's a simplification. It also means that you no longer have an /etc/init.d filled with executable files. And the underlying mechanism used by systemd to order dependencies (blocking on sockets) particularly fits the Unix philosophy.
Mind you, I'm not really comfortable with systemd overtaking udev and syslog (resistance is futile...) but that's a different debate.