@ChristianHupfer In principle I agree with you, and a clear separation of the different layers is a very nice ultimate goal, but it’s not always possible, and is particularly hard to achieve in TeX where the engine’s error messages have a way of creeping back up all the way to the highest level. That’s a good example of Joel Spolky’s
law of leaky abstractions (
joelonsoftware.com/articles/LeakyAbstractions.html) – you should read it if you don’t know it, it has very good insights.