Sift together flour, baking powder, baking soda, cinnamon and salt onto a sheet of waxed or parchment paper. In a medium bowl, gradually add sugar to oil while stirring. When sugar has dissolved, beat in eggs one at a time, beating well after each addition. Gradually add the sifted dry ingredients.
Add the grated carrots. (A food processor with the grating attachment makes this job an easy one).
Turn mixture into 3 well buttered and floured 8 inch baking pans. Bake at 350°F for 50 minutes or until done.
Beat butter and cream cheese together until light. Gradually add confectioners sugar. Stir in vanilla and walnuts. Fill and frost 3 layers of the carrot cake.
Garnish the top of the cake with extra chopped nuts and/or carrot curls, if desired. To make carrot curls, thinly sliver carrot with a vegetable peeler and drop strips into ice water. The carrot curls should be prepared just before serving.
Allow the cake to stand for 5 hours before slicing and serving so that it will set up properly (prevents it from falling apart).
Refrigerate for up to 4 days; freeze if keeping longer. We store one half in the refrigerator and freeze the other half.
Carrot cake is one of our favorites for packing along on picnics and in bagged lunches. Cut into individual servings and wrap in aluminum foil; keep in the freezer until the last minute.