У меня уже есть несколько языков под моим поясом (в грубом порядке): Python, C, С++, PHP, Javascript, Haskell, Java, MIPS, x86. Но прошло уже почти два года с тех пор, как я узнал новый, и я начинаю испытывать зуд. У меня есть несколько критериев:
- Должен (повторить: должен) иметь бесплатную реализацию Linux
- Должно отличаться от языков, которые я уже знаю. Другими словами, у него должны быть функции, которые заставляют меня думать о решении проблем по-новому.
- Должен иметь некоторый потенциал для практического использования. Это не обязательно должна быть следующая Java, но это исключает Brainf * и Shakespeare:) Мне все равно, сколько вакансий у нее есть, но приложения и библиотеки реального мира - это плюс.
- Должно иметь как минимум достаточно бесплатных учебных материалов, чтобы я начал работать.
Я думал Lisp (CL? что-то еще?) или OCaml. У меня уже есть опыт работы с функциональными языками с Haskell (да, я знаю, что Lisp/OCaml - это мультипарадигма). Я не эксперт. части кода из Real World Haskell все еще могут сгладить мой мозг, но я понимаю основные понятия и некоторые продвинутые (функторы, монады).
Какой из них выбрать? Любые другие языки, которые я забыл? Кроме того, не могли бы вы включить некоторые полезные ссылки на хорошие книги/учебники и т.д.