×Закрыть

Scala дайджест #1

Пожалуй, главный недавний контент — видео со Scaladays 2014.

Развитие языка:

А вот какие дополнения могут войти в стандартную библиотеку:

Еще из интересных видео:

Курсы:

Кстати, сама Coursera тоже сделана на Scala.

И если уж начали говорить о реактивном программировании:

Трансляция Scala в JavaScript:

Scala и Android:

Инструменты:

BigData:

Математика:

  • ScalaNLP — набор библиотек для машинного обучения и обработки текстов. Среди них надо отметить Breeze, предоставляющую примитивы для основых математических объектов, Saddle — библиотека математическиз примитивов, во многом схожа с R.
  • Матлаб-подобное окружение для scala: Scalalab
  • Окружения и DSL для ML алгоритмов: stanford-ppl.github.io/Delite/optiml/index.html
  • Встроенный DSL для логического программирования
  • Библиотека для вероятностного моделирования
  • Еще одна библиотека вероятностного моделирования со встроенным DSL. Книга, ее описывающая

Новые версии:

Ближайшие локальные события:

Благодарю за помощь в составлении дайджеста Петра Руденко, Андрея Штукатурова, Алексея Лепишина, Владислава Пранкевича.

← Предыдущий выпуск: Scala дайджест #0.
Следующий выпуск: Scala дайджест #2

LinkedIn

11 комментариев

Подписаться на комментарииОтписаться от комментариев Комментарии могут оставлять только пользователи с подтвержденными аккаунтами.

Отличная подборка.
Кстати, в нашем проекте кол-во багов в коде написанном на Scala меньше чем на Java судя по результатам QA и code-review. Мб, причина в том что код получается гораздо компактнее.

Логика простая: «меньше кода — меньше багов». Поэтому например многие пишут JS на препроцессорах.

а «меньше кода — меньше скорость» правда?

Больше кода, неработающего с большей скоростью немного хуже, чем меньше кода, работающего с меньшей ;)

Логика простая: «меньше кода — меньше багов»
Не «простая логика», а «логика простака» или скорее дилетанта.
blog.codinghorror.com/...no-code-at-all — сколько людей, столько мнений.
А вот прочитайте статью внимательнее. Или хотя бы это предложение:
“The more code you have, the more places there are for bugs to hide”
и это
" I’m talking about practical, sensible strategies to reduce the volume of code an individual programmer has to read to understand how a program works."
.
И подумайте, почему эта статья не подтверждает ваше утверждение, но при этом подтверждает мое.

Забавно что вы запихнули сюда Storm который в общем-то почти что целиком кложурный. И насчет «альтернативности» не совсем согласен — Storm ориентирован исключительно на in-stream обработку, в отличии от batch-only Hadoop’а и in-stream/batch Spark’а.

Высокопроизводительные системы обработки сообщений с ослабленными гарантиями

А что это значит?

А вот какие дополнения могут войти в стандартную библиотеку

Споры уж совсем врядли — в последнее время разработка core-scala ориентирована на избавление от лишних сущностей, вот даже xml вынесли в отдельный модуль.

1. storm — да, нужно было storm-dsl наверное, отдельно. [github.com/...lvia/ScalaStorm ] // in-stream это и есть алтернатива bacth-only

2. kafka — ’at least once’ вместо exactly once; (то есть сообщение может переслаться, или можно повторную пересылку отключить, получится ’at most once’). kestrel — ’loosely ordering’ (сообщение пишется/читается случайной машинке из кластера без коммуникации между очередями в разных JVM)

3. Ну SIP-ы же есть и уже года полтора про них активно рассказывают. Подождем-увидим. Как по мне — то модуляризация библиотек это прооцесс ортогональный включению в стандартную бибилиотеку. Вот reflection тоже вынесли в отдельный jar.

Подписаться на комментарии