: split-keys-and-values ( keys-and-values -- values keys ) unzip swap keys ; : (reduce-results) ( quot-strings keys-and-values -- reductions ) split-keys-and-values f [ eval( -- quot ) call( keys values rereduce? -- reduction ) ] map ; ! what do?