It would be even more complicated in the DSL (join ... on ... - you don't know if that 'on' is coming) and too limited (think DistributedDriver)