На самом деле, обучение только на практике - вам нужен проект, для которого вы можете использовать данный язык.
Project Euler - это первое, что приходит на ум как часто используемый набор проблем, чтобы попробовать на новом языке, даже если это не то, что я когда-либо пробовал.
Если языком является другой JVM или CLR, проблемы с изучением среды можно оставить в стороне - вы можете использовать все ваши знакомые API в своем коде Clojure / Scala / F # ... - и сосредоточиться на синтаксис и идиома.
В противном случае вы, вероятно, используете новый язык, потому что он хорошо подходит для конкретной проблемы, которую вы хотите решить (например, нативный код и функционал -> Haskell; распределенный и параллельный -> Erlang), так что подгонка функции Набор известен заранее, но у вас есть дополнительная нагрузка в изучении стандартных API. И вот для чего нужно прототипирование.