change a hash so it doesn't map from syntax objects directly, but
instead constructs a suitable key