The process of writing large parallel programs is complicated by the need to specify both the parallel behaviour of the program and the algorithm that is to be used to compute its result.
What should you learn first, Lisp or Haskell? It depends entirely on your personality. One thing is certain - if you want to be a great developer eventually you'll have to learn both.
J. Gibbons, and G. Jones. Proceedings of the third ACM SIGPLAN international conference on Functional programming - ICFP '98, page 273--279. New York, ACM Press, (1998)
T. Harris, S. Marlow, S. Peyton-Jones, and M. Herlihy. Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming, page 48--60. New York, NY, USA, ACM, (2005)
R. Hinze, N. Wu, and J. Gibbons. Proceedings of the 18th ACM SIGPLAN International Conference on Functional Programming, page 209--220. New York, NY, USA, ACM, (2013)
M. Hofmann, E. Kitzelmann, and U. Schmid. German Conference on Artificial Intelligence (KI'08), volume 5243 of LNAI, page 78--86. Springer-Verlag, (2008)