Which of these more closely resembles your learning style
a) You like to hear a general (perhaps theoretical) explanation of the learning domain. You dislike specific examples but instead prefer to stick to learning at a more "higher level" and figure out the specific examples yourself if needed. This approach I call "top to bottom but preferring top over bottom"
b) You like to start from a general (perhaps theoretical) explanation of the learning domain but then you wish to procees to specific examples which help you make sense of the theory you just learned. You dislike it if only theory but no specific examples is given. This approach I call "top to bottom but preferring the bottom over top".
c) You like to start from specific examples and work your way towards the more general and more theoretical. Even if you start from the specific you eventually wish to conquer the abstract level. This approach I call "bottom to top but preferring the top over the bottom".
d) You like to start from specific examples and pretty much stick to the "concrete". You do wish to learn to apply your knowledge more widely than just those specific cases but you only want to hear theory where it helps you to figure out new practical applications and the details of the theory do not interest you as such. This approach I call "bottom to top but preferring the bottom over top".
So where do you stand and how do you see this relating to functions? You can alter the desriptions I gave if you think they could be formulated better.
Edit: Personally I'm either b) or d). I haven't decided yet. My target is always to learn the "bottom" i.e. how to apply my knowledge to solve problems. However I'm currently unsure whether my natural approach is to start from top and head towards bottom or start from the bottom and touch the top only when necessary. When I'm feeling lazy or when schedule is tight I guess I stick to d) but when I have time and energy I am more b). I guess b) is my "ideal mode" where d) is the "must...hurry...no...time..." mode.