Unfortunately, mk inherits from rc the principle of having the list of strings as the fundamental datatype (also used by Jam). That works, but it’s noticeably more limiting than Tcl’s route of having everything be strings but with robust quoting and unquoting procedures for putting lists inside them—at which point Tcl starts to look like a Lisp-2 with a slight propensity for stringiness and a mildly unusual syntax.
I always saw Tcl as a bastard child of Lisp and sh. It's beautiful in its own quirky way.
Pehaps this is misleading.
The mk paper (and Unix man page) doesn't mention rc.
Plan 9 existed since the mid-80s.
This sentence in the Unix rc(1) sure makes it seem like rc was Plan 9-first:
Environment entries for variables are kludgy for UNIX compatibility.
So rc was made for Plan 9. The examples in that paper are definitely on tenth edition Unix, I think this would be because
A fairly complete version of Plan 9 was built in 1987 and 1988, but development was abandoned. In May of 1989 work was begun on a completely new system
from https://doc.cat-v.org/plan_9/1st_edition/designing_plan_9 (1990).
I'm not criticizing anyone or any tool, just that we can't seem to find some good way to tool the compilation of both trivial and very complex projects, without taking an hour or two off.
I also understand that I do not want to work on such an endeavor, that seems boring AF and kudos for people that like that. You are not enough it seem :)