Несколько дней назад, 13 января, Erik Reitsma анонсировал в рассылке erlang-questions созданный им порт Erlang для Android. Этого порта нет (пока что) в Google Play, но его не сложно установить вручную. Для этого требуется только разрешить устанавливать приложения из неизвестных источников в настройках Android’а. Рутить устройство не нужно.
Что будет, если взять некое подмножество языка C++ и попытаться избавиться от различных его недостатков? Java? Хорошо, теперь выкидываем виртуальную машину и добавляем пару элементов функционального программирования. То, что мы получим в итоге, и есть Vala.
Помните, как недавно мы с вами собирали deb-пакет Erlang с поддержкой wxWidgets? Как вы могли догадаться, все это было неспроста. И действительно, то была лишь подготовка к данной заметке, посвященной созданию GUI приложений на языке Erlang.
Решил вот написать свой HTTP сниффер. Не то, чтобы существующие решения, всякие там FireBug, Wireshark, tcpdump и urlsnarf, плохо работали. Просто какие-то они не совсем удобные или не всегда делают то, что мне действительно нужно.
Помните, я как-то писал про разработку GUI приложений на Haskell с использованием библиотеки wxWidgets? Мне стало интересно, а нельзя ли сгенерировать код GUI на языке C++ в wxGlade или Code::Blocks, а затем связать этот код с кодом на Haskell, реализующим собственно функционал приложения? Оказалось, что можно, и довольно просто.
Одна из проблем интерпретируемых языков заключается в зависимости скриптов от наличия у пользователя соответствующего интерпретатора и модулей, используемых в коде скрипта. В мире UNIX эти проблемы никого не беспокоят благодаря менеджерам пакетов. К сожалению, 90% наших потенциальных пользователей сидят не под UNIX.
В этой заметке речь пойдет о создании кроссплатформенных GUI приложений на языке программирования Haskell с использованием библиотеки wxWidgets. Особое внимание будет уделено уменьшению размера программы. Программа, размер которой изначально составлял 26 Мб, будет ужата до 3.9 Мб без потери функциональности. И это без использования UPX.
Как и обещал, пишу продолжение своей заметки про wxWidgets. В этом посте будет описана установка wxWidgets и Code::Blocks под различными операционными системами, основы создания GUI с помощью wxSmith, а также приведены небольшие примеры кода.
Когда деревья были большими, а для выхода в сеть нужно было покупать карточки ROL, на компьютерных форумах было модно писать всякие лозунги про свободное ПО и открытые протоколы. Дескать Opera никому не нужна, потому что есть Firefox, который распространяется под GPL. Или что Аська скоро умрет, потому что есть открытый Jabber с его шифрованным трафиком, email-подобными JID и тп. Прошли годы. Ничего не изменилось.
Некоторое время назад я стал интересоваться разработкой кроссплатформенных GUI приложений. Сейчас существует множество подходов к разработке данного типа программ — это Java, библиотеки GTK и Qt, скриптовые языки. Однако я сделал выбор в пользу библиотеки wxWidgets, и ниже будет рассказано, почему.