If I may suggest an entirely different direction (that also requires either schema knowledge or adherence to a convention), I've always been mildly annoyed that foreign keys are kind of like pointers that don't behave like pointers. What if:
create table users (id int primary key, name text);
create table things (id int primary key, creator int references users);
from things select [id, creator.name];