But you can declaratively specify a full system configuration in a real programming language, too. This is precisely what the GNU Guix system configuration API does, for example. You write OS configs in functional, declarative Scheme code.<p><a href="http:&#x2F;&#x2F;www.gnu.org&#x2F;software&#x2F;guix&#x2F;manual&#x2F;html_node&#x2F;System-Configuration.html#System-Configuration" rel="nofollow">http:&#x2F;&#x2F;www.gnu.org&#x2F;software&#x2F;guix&#x2F;manual&#x2F;html_node&#x2F;System-Con...</a>