Matlab is a numerical simulation/mathmatical analysis environment. It has its own programming language and is optimized to do matrix manipulations. It is often used by scientists and engineers to solve problems using numerical methods that can not be solved analytically.

For instance, you may want to know exactly what the motion of a ball flying through the air is. Isaac Newton's equations of motion give the base understanding but if you want to include the spin of the ball (for instance to model a baseball pitch) or the friction/drag due to air, you can't just write down the answer, you need to sort-of 'follow' the ball and apply numerical methods at each time step to see how it acts. Matlab is a good tool for doing this so that a solution can be obtained with minimal programming and without a deep understanding of the innards of the computer (who can keep the difference between a longint on unix and on windows straight anyway?)

There are some open source alternatives to matlab called scilab and octave (thanks to spiregrain for alerting me to octave). I could never get scilab to do what I wanted but I haven't tried octave yet (YMMV).