I found an alternate: ant. This is a TeX-like system, still in development, but it directly supports positioning areas in a grid. Also it is written not in Pascalish spaghetti code but in good Objective Caml code. Furthermore, the macroprocessor is a 'normal' macroprocessor and not a token-based nightmare like TeX. Further-furthermore, there is embedded in ant an ML-like functional programming language; in TeX you have to program arithmetic and loops and whatnot in macrolanguage primitives, and it is similar to programming in assembly language.
I don't think this is just an accident of how TeX evolved. Let's remember (if we knew about such things) that TeX was written by Donald Knuth as a way for him to save electronically the typesetting of his book series, The Art of Computer Programming; let's also remember that in this series the language used to express algorithms is an assembly language. TeX has its inventor's character, both the good and the bad.
I also took a second look at Scribus. Scribus is missing at least the following two major feature: automatic kerning (except for Type 1 fonts), and automatic ligatures.