If you want to learn functional programming, you have several options to consider. You could delve into a purely functional language such as Haskell, Clojure, or Elixir for a deep and comprehensive understanding; however, this may take more time and effort to master. Alternatively, you could opt for a multi-paradigm language like Scala, Kotlin, or JavaScript for a flexible and pragmatic approach; yet, this may come with some inconsistencies and trade-offs between paradigms. Lastly, you could learn a functional library such as Lodash, Ramda, or RxJS for a practical and convenient way to use functional programming features in your existing language; however, this may limit your exposure to some functional programming concepts and patterns.