Слово о iota и enumerate

Может быть Вы помните о том, с чего наш блог начинался… Вначале был уникальный язык программирования под названием Icon, которым мы увлекались некоторое время назад. Он пленил нас своей простотой и продуманностью, а также своей сверхвысокоуровневостью и необычной концепцией генераторов. Чуть позже мы познакомились с D, который пошел гораздо дальше, воплотив в жизнь концепцию диапазонов.

Именно о некоторых интересных алгоритмах над диапазонами (в основном, над числовыми) сегодня и поговорим.

Читать далее →

Подробнее

Автоматизация компиляции и запуска QtE5-приложений в Windows

Библиотека QtE5 очень удобная и нужная вещь, но иногда требуется добиться того, чтобы из некоторой среды разработки или какого-либо редактора можно было легко и быстро скомпилировать
QtE5-приложение. Дело обычно осложняется еще и тем, что после компиляции такого приложения, саму программу просто так не запустить требуется набор dll-файлов и картинок, которые распространяются вместе с QtE5. Естественно, сразу возникает вариант копирования всех нужных файлов QtE5 в какую-нибудь уединенную папку, однако, постоянное перемещение исполняемых файлов в нее может весьма быстро надоесть… Читать далее →

Подробнее

Простая консольная программа для ведения списка задач (todo)

В этой статье я расскажу о том, как однажды я написал небольшую консольную программку для ведения списка задач почти полностью в функциональном стиле (за исключением использования переменных и некоторых приемов из ООП). К сожалению, в статье помимо полезных практических приемов будут и некоторые отрицательные примеры, в частности, некоторое дублирование кода и нерациональное использование функций стандартной библиотеки. Также в этой скромной публикации я покажу с чего я начал функциональное проектирование программы (будет показан пример кода на одном из функциональных языков), нестандартное использование одного файла из состава библиотеки QtE5, одну интересную библиотеку для раскрашивания сообщений в командной строке, а также я сделаю небольшое резюме о полученном в ходе работы над этой программкой todo опыте. Читать далее →

Подробнее

Добавление в класс универсального свойства

Язык D обладает богатыми возможностями кодогенерации, которые позволяют упростить процесс добавления своих свойств в структуру и класс. А что если потребуется в класс добавить свойство, которое будет выдавать значение того типа, который нужен в данный момент?

Читать далее →

Подробнее

Проверка любого типа на принадлежность к числовым

Иногда возникает необходимость проверить является ли некоторый тип числовым, при этом, если тип относится к числовым, то не важно целое ли это число или же с плавающей точкой. То есть решение должно быть универсальным. Читать далее →

Подробнее

Создание своего виджета в QtE5

В этой статье, я покажу вам, несколько с иной стороны, насколько удобна QtE. Дело в том, что несмотря на то, что в этой замечательной привязке к библиотеке Qt5, есть много элементов графического интерфейса, но … иногда этого набора не хватает… Хоть это и случается редко, но порой возникает задача, при которой требуется создать какой-то свой графический элемент. Вот тут то, начинается самое интересное и при этом не трудное!

Читать далее →

Подробнее

Паттерн «Стратегия» в D. Строим простое семейство алгоритмов для рисования графических примитивов

Довольно часто в своей практике я использую D Form Library 2 (DFL2) для своих экспериментов с математической графикой и рисованием, но бывает так, что приходиться пользоваться другими инструментами для тех же самых задач. Одним из таких инструментов является библиотека dlib, которая служит для работы с изображениям и которая способна работать в среде Linux, что делает ее одним из прекраснейших средств для математических экспериментов с графикой. Читать далее →

Подробнее

Удаление элемента из массива по его индексу

Удалить элемент из массива, зная его индекс очень просто, и при этом совершенно не обязательно для этих целей использовать диапазоны и алгоритмы из стандартной библиотеки! Читать далее →

Подробнее

Совсем простой просмотрщик PPM-файлов

Как наверное заметили многие темы в нашем блоге очень часто повторяются, встречаясь в наших заметках в самых различных вариантах, зачастую усовершенствованных. Иногда, мы не делаем никаких улучшений, а лишь слегка облагораживаем внешний вид, описывая таким образом результаты наших собственных экспериментов с различными GUI или же инструментами. Также, очень и очень редко, в нашем блоге, авторы возвращаются к уже написанному, пытаясь реализовать то, что когда-то не получалось в силу различных причин: нашей неопытности, недостачи времени и некоторых других причин…

Сегодня, я вновь хочу обратиться к одной из уже затронутых в блоге тем, но при этом я собираюсь открыть вам некоторые новые горизонты…

Читать далее →

Подробнее