I currently am a programmer, I'm almost 16 years of age and have pretty much narrowed my careers down to something involving a Computer Science degree or Electrical Engineering degree (I know they are quite different but this question is about my friend) but my friend isn't so sure.

He is very interested in maths and is very good at it and I think he would enjoy programming but he isn't willing to try it (edit he is willing to try but has never done before). Can anyone give me an suggestions for a language or tool that he could dabble in programming (at a reasonably basic level I assume) to solve maths problems or involve some kind of maths.

As I say he enjoys maths a lot but I think he would enjoy programming, the problem is I don't want him to be put off by the stuff that isn't relevant at introductory levels such as memory allocation et al. I know that is very important but the point is that I want him to learn a bit of programming with maths then hopefully if he is interested enough he can start learning programming as programming.

Edit:
Its not that he's completely uninterested - more that he hasn't actively explored the area before, maybe because he isn't informed about it. I wouldn't want to force him to do something he doesn't want to, I see this as more of a little push so that he can learn about programming. If he doesn't like it - fair enough, I can't control that and don't want to but if he turns out to enjoy it - this push will have been the right thing.


If you want a "math-like" language, Haskell is your best friend (for your best friend). You can easily make new functions without hassle. It is the best language recommendation I can give you for you friend. Here are some links:

Try Haskell - An online Haskell compiler and tutorial.
Learn You A Haskell For Great Good! - This is how I learned Haskell.
How to write a Haskell program - The title is somewhat misleading, it is geared to get new programmers started.
Programming in Haskell (Book) - Never read it, but it looks pretty good!
Discrete Mathematics Using a Computer - THIS IS A GREAT BOOK FOR YOUR BUDDIES SITUATION
11 Reasons To Use Haskell - From a comment!

Mathematica
Wolfram's Mathematica is another interest he may have.

Mathematica is a computational software program used in scientific, engineering, and         mathematical fields and other areas of technical computing. It was conceived by Stephen   Wolfram and is developed by Wolfram Research of Champaign, Illinois.

Although it is expensive, it is worth it. Here are some links:

Mathematica "Home Page" - Probably where you should start.
Documentation - Learn and use Mathematica.
Hands-On Mathematica Tutorial - Great way to get started.

Algorithms
Algorithms are important for any program, but your buddy should start with these when he gets comfortable with a language. Here are some more links:

Algorithms by S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani - This is an online publication of a great book!
LaTeX/Algorithms and Pseudocode - Looks promising!
List of Algorithms (Wikipedia) - This is one of my favorite Wikipedia entries.

Hope this helps! If you have any questions or feedback feel free to comment! By the way, all of these links are to free resources. If you want a printed book, I have a few recommendations, just leave a comment!
