Решил собрать в единый список найденные мной задачи и упражнения, непосредственно связанные со Scala (исключая совсем уж банальный HackerRank). Многие из них могут быть сформулированы и для других языков (верно и обратное), но намного удобнее, когда не нужно заниматься дополнительной интерпретацией.
1. https://www.scala-exercises.org - базовые упражнения в часто используемых Scala-библиотеках. Сравнительно простые, но помогут разобраться с их основными функциями и структурами данных.
2. https://olegpy.com/cats-effect-exercises - 2 задачи на параллельные и конкурентные эффекты от Олега Пыжкова. При необходимости можно воспользоваться подсказками, а "базу" задачи можно сразу запустить в scastie.
3. http://degoes.net/articles/zio-challenge - достаточно интересная задача от Джона Дегоуза на создание балансировщика нагрузки относительно процента наблюдаемых ошибок. В комментариях набралось немало решений, к которым можно обратиться за помощью.
4. http://scalapuzzlers.com - сайт, аналогичный оному для языка Java, с задачами вида "что будет, если написать вот так?". Естественно, разбираются сугубо краевые случаи, к каждому из которых прилагается подробное объяснение.
5. https://www.riddles.io - сайт с соревнованиями на написание ботов, принимающий решения на Scala. Примечательно, что в большинстве соревнований присутствуют непосредственные партии между ботами, для которых даже сделали приятную визуализацию.
6. http://aperiodic.net/phil/scala/s-99 - Scala-адаптация 99 алгоритмических задач для языка Prolog. Не для всех задач есть решение, а их сложность варьируется от нахождения последнего элемента в списке до создания кроссворда заданной формы.
7. https://exercism.io/tracks/scala - раздел, посвященный Scala, на сайте по изучению ЯП. Предлагается более 90 задач возрастающей сложности, причем каждое решение комментируется ментором-человеком. И, да, это бесплатно.
8. https://www.codewars.com - соревновательный сайт с задачами по программированию разной степени тяжести. Scala пока находится в стадии бета-тестирования, зато на Haskell можно решать задачи уже сейчас ;)
9. https://www.codetriage.com - по сути список issue в крупных репозиториях, среди которых присутствуют представители из Scala-экосистемы. Сами "проблемы" предполагается либо смотреть вручную, либо получать случайные в почтовой рассылке.
>>Click here to continue<<
