Top-down programming works great when using GPT-4 as a coding assistant, as long as it is told to not stub functions, use placeholder or TODO comments, but use as many undefined functions as it wants. But when it starts calling the same function recursively, it's time to tell it to stop the top-down approach and write the functions that does the actual work.