I have always had trouble with recipes. The instructions are always located at the bottom well after the full list of ingredients is displayed. So guess what happens… yup, I go down the ingredients list adding each to a big bowl as I go. By the time I read the instructions and learn there was a specific order it is far too late.
I have been reading The Little Schemer and came across a nearly perfect solution that I just had to share.
(define cookies (lambda () (bake (quote (350 degrees)) (quote (12 minutes)) (mix (quote (walnuts 1 cup)) (quote (chocolate-chips 16 ounces)) (mix (mix (quote (flour 2 cups)) (quote (oatmeal 2 cups)) (quote (salt .5 teaspoon)) (quote (baking-powder 1 teaspoon)) (quote (baking-soda 1 teaspoon))) (mix (quote (eggs 2 large)) (quote (vanilla 1 teaspoon)) (cream (quote (butter 1 cup)) (quote (sugar 2 cups)))))))))
The recipe above completely solves this issue! Sure, maybe remove a few of the programming bits are unnecessary, but once those are removed I don’t think a more clear design could be found.