Какой функциональный язык программирования выбрать при изучении структур данных и алгоритмов?
Собственно, рекомендую Scheme в комплекте с книгой «Structure and Interpretation of Computer Programs» (Структура и Интерпретация Компьютерных Программ aka SICP) за авторством Харольда Абельсона и сотоварищей. Если читать внимательно и выполнять хотя бы часть заданий, то очень неплохо освоить можно функциональное программирование, и на изучение функциональных языков уйдёт на порядок меньше времени. Если хочется более актуального языка, то Haskell или Erlang.
Судя по популярность языков, единственным функциональным языком в топе является Lisp.
Меня, всё-таки, не в последнюю очередь интересует возможность заработать хоть какие-то деньги на изучаемом языке.