In the standard possible-worlds framework of philosophical semantics, we would distinguish between an extensional and an intensional function concept as follows. Let us say that that two functions are extensionally equivalent at a world if and only if they assign the same values to the same arguments at that world. And let us say that two functions are intensionally equivalent if and only if they assign the same values to the same arguments at every possible-world. To illustrate, consider the functions highest-mountain-on-earth and highest-mountain-in-the-Himalayas, where  highest-mountain-on-earth  assigns the highest mountain on earth as the value to every argument and  highest-mountain-in-the-Himalayas  assigns the highest mountain in the Himalayas as the value to every argument. The two functions are extensionally equivalent (at the actual world), but not intensionally so. At the actual world, the two functions assign the same value to every argument, namely Mt. Everest. Now consider a world where Mt. Everest is not the highest mountain on earth, but say, Mt. Rushmore is. Suppose further that this is so, just because Mt. Rushmore is 30.000 feet/9.100 m higher than it is at the actual world, while Mt. Everest, with its roughly 29.000 feet/8.800 m, is still the highest mountain in the Himalayas. At that world,  highest-mountain-on-earth  now assigns Mt. Rushmore as the value to every argument, while  highest-mountain-in-the-Himalayas   still assigns Mt. Everest to every object. In other words,  highest-mountain-on-earth and  highest-mountain-in-the-Himalayas are extensionally equivalent (at the actual world) but not intensionally equivalent.