В последнее время наблюдается большой интерес к языкам программирования со статической типизацией. Зачастую тот факт, что в неком языке (Scala, Haskell, OCaml, …) используется статическая типизация, преподносится в качестве неоспоримого преимущества этого языка над языками программирования с динамической типизацией (Erlang, Clojure и другие лиспы, Perl, Python, Ruby, …). Здесь имеет место явная подмена понятий, манипуляция неокрепшим сознанием неопытных программистов, троллинг, пропаганда и другие нехорошие вещи.

Темы выпуска: объединение нескольких Git-репозиториев с сохранением истории коммитов, управление свопом в Linux, вывод дерева процессов в Erlang, определение объема памяти, занимаемого контейнерами в Scala, и не только. Предыдущие выпуски: десятый, девятый, восьмой, седьмой.

Сегодня мы научимся строить графики, гистограммы и круговые диаграммы в Scala. В этом нам поможет замечательная библиотека Scala Chart, которая представляет собой обертку над широко известной в мире Java библиотекой JFreeChart. Также будут объяснены некоторые интересные возможности и особенности Scala, которые ранее не рассматривались в этом блоге.

В этом выпуске: языки программирования под виртуальную машину Erlang’а, интересные репозитории, линки на линкоблоги, лучший в мире почтовый клиент для Linux и не только. Предыдущие выпуски: февраль 2013, январь 2013.

Недавно мне захотелось прикрутить к блогу виджет, содержащий список самых просматриваемых заметок. Поскольку WordPress не собирает соответствующую статистику, количество просмотров предполагалось брать из LiveInternet. Обычная задача из серии «скачать и пропарсить», берем Perl и вперед. Но ведь мы уже много раз так делали, не интересно. Давайте лучше посмотрим, как справится с этой задачей Scala.

Данная заметка содержит краткие рецензии на десять книг, прочитанных мною за последние два месяца. Преимущественно это были книги о функциональном программировании, PostgreSQL и Git. Со списком из предыдущих десятки книг вы можете ознакомиться здесь.

В этой заметке будет показано, как в Scala послать письмо через гугловые SMTP-сервера с помощью пакета JavaMail. Притом не какое-нибудь простое письмо, а с прикрепленным файлом, в кодировке UTF-8 и с HTML, содержащим картинки. Функциональщины как таковой не будет, зато мы увидим, как выглядит использование Java-библиотек из Scala, а также ознакомимся с той частью Scala, которая «почти как Java, только лучше».

Прощай, FreeBSD!

18 марта 2013

Настоящим постом мне хотелось бы уведомить вас о том, что неделю назад я снес FreeBSD со своего ноутбука Asus X51L, тем самым окончательно избавившись от этой ОС в своей жизни. Теперь я счастливый убунтовод и пользователь Android. Под катом перечислены причины, которые вынудили меня отказаться от FreeBSD.

В этой заметке мы познакомися с утилитой sbt. Мы научимся собирать с ее помощью проекты на Scala, устанавливать сторонние библиотеки, а также узнаем, как собрать jar, который будет работать на любой машине, где есть Java, без установки каких-либо зависимостей. Напоминаю, что установка sbt была рассмотрена в посте, опубликованном в этот понедельник.

Перепробовав странные и никому на практике ненужные Haskell, OCaml, Perl 6, Common Lisp, Vala, Go, а также немного D, что, впрочем, не было отражено в этом блоге, я решил обратить свое внимание на Scala. Этот язык заинтересовал меня тем, что он отдаленно напоминает OCaml, только без этих ужасных параметризованных модулей, зато с разными плюшками и под JVM, что в последнее время я не склонен считать за недостаток. К тому же, достоверно известно, что на Scala уже сегодня пишут вполне себе реальные проекты, и в их число входит далеко не один только Twitter.