В первую голову, - завидую, ибо математику знаю гораздо меньше, чем хотелось бы. Однако осмелюсь высказать сложившиеся к настоящему моменту представления о том, как программирование и математика связаны.
Думается, прежде всего стоит определиться, - для чего вам нужно программирование. Вы хотите программировать для своей профессиональной математической деятельности? Матмоделирование? Матфизика? Железо?
Предположим, что вы с этим определились, - и тогда стоит вопрос выбора инструмента. Например:
Mathematica, коли вы с ней ещё не знакомы. Мультипарадигменная среда программирования чего угодно. Некоторая сумасшедшесть Стивена Вольфрама, кажется, идёт ей даже на пользу.
Функциональные языки программирования общего назначения включают уже упомянутые Haskell, LISP, Scheme, Clojure. Я бы предложил Scala, которой занимаюсь сейчас сам. Вам, вероятно, легко дадутся лямбда-исчисление и теория категорий, на которых оно всё работает. Основа - JVM, в этом есть и слабые, и сильные стороны; преимущество в том, что вы сможете писать и веб-приложения, и настольные, и мобильные.
C++ - это та ещё заморока; упоминаю его потому, что существуют книжки Александра Степанова - "Elements of Programming" и совсем недавно изданная "From Mathematics to Generic Programming", кои описывают программирование с точки зрения абстрактной алгебры. Базируются на языке, основанном на C++. Я не думаю, что с этого следует начинать, книжки трудные; но может быть, вам будет интересно просто полистать или сделать пометку на будущее.
Функциональщики терпеть не могут мутабельность (изменяемость) значений. Их инструменты - теории типов, множеств, категорий, лямбда-исчисление. Степанов же утверждает, что реальная машина имеет память, ячейки которой изменяемы по определению, и посему функциональщики витают в облаках и отрываются от бренной земли. Те в ответ обзывают его старпёром, застрявшим в далёком прошлом. В общем, жизнь продолжается.
Мне представляется, что и те и другие всего лишь с разных сторон подходят к одной общей проблеме - математизации программирования, которая стоит весьма остро. Отрасли информационных технологий необходимы люди, разбирающиеся в математике, чтобы сделать программирование лучше, нежели оно есть сейчас.
Ещё некоторые моменты, которые вам могут быть интересны.
Конкретная математика за авторством Кнута, Грэхема, Паташника представляет собой учебник по математическим методам, которые авторы считали полезными в разработке программ.
Упоминание Искусства программирования Кнута стало уже обязательным в каждой теме об обучении программированию. Однако, живой человек, живущий не на необитаемом острове, вряд ли способен проработать оную книгу целиком. Скорее можно использовать её как справочник и как источник вдохновения.