Папоротник Барнсли для Rosetta Code

Данный пост практически не содержит ничего нового или того, что мы не делали раньше. Этот пост носит скорее агитационный характер и содержит весьма простой пример, про который мы рассказывали уже дважды. Команда блога настоятельно рекомендует ознакомится с данным постом всем, кого интересует дальнейшее распространение информации по D и кто обладает достаточным опытом для решения на […]

Подробнее

Сборочная утилита redo на D своими руками

В этой достаточно сложной статье мы покажем как своими руками написать утилиту, которая позволит собирать сложные проекты со множеством файлов и которая не зависит от выбранного вами языка программирования. Утилита, которую мы опишем далее, называется redo и она при скромном на первый взгляд функционале, позволяет отслеживать зависимости в сборочных файлах и запускать пересборку только в […]

Подробнее

Алгоритм Брезенхэма для рисования окружности в ppmformats

В этом скромном рецепте я покажу один из важных алгоритмов в области математической графики — алгоритм Брезенхема для рисования окружности. Код, который будет приведен далее, является модификацией кода с Rosetta Code, но для ppmformats, хотя может быть легко переиспользован и для любой другой библиотеки.

Подробнее

Пользовательские атрибуты (UDA) [перевод]

Пользовательские атрибуты (User-Defined Attributes, UDA) — это выражения времени компиляции, которые можно добавить к объявлению чего-либо. Затем эти атрибуты можно запрашивать, извлекать и изменять во время компиляции.

Подробнее

Реализация алгоритма SHA-256

SHA-256 一 криптографическая хэш-функция, разработанная Агенством национальной безопасности США. Алгоритм SHA-256 основан на структуре Меркля-Дамгарда, согласно которой начальный индекс делится на блоки сразу после внесения изменений, а те, в свою очередь, на 16 слов.

Подробнее

Вставка байтов с фиксированной избыточностью (COBS)

Вставка байтов с фиксированной избыточностью (COBS) — это один из алгоритмов кодирования байтов данных, который приводит к эффективному, надежному и однозначному кадрированию пакетов независимо от их содержимого, что упрощает для принимающих приложений восстановление искаженных пакетов. Он использует конкретное значение байта, обычно ноль, в качестве разделителя пакетов. Когда в качестве разделителя используется ноль, алгоритм заменяет каждый […]

Подробнее

Хеш-функция one_at_time

Хеш-функция one_at_time входит в семейство не криптографических хеш-функций общего назначения для ключей переменной длины разработанных Бобом Дженкинсом. Впервые описание функции было опубликовано в 1997 году.

Подробнее

Больше скрытых возможностей стандартной библиотеки D [перевод]

После успеха последней статьи, подробно описывающей скрытые сокровища стандартной библиотеки D, я подумал, что напишу еще одну заметку о том, почему язык программирования D в сочетании с его большой стандартной библиотекой удивительно полезен. Сама библиотека — это огромный зверь, она была написана некоторыми исключительными программистами, поэтому иногда вы сталкиваетесь с действительно полезными и хорошо спроектированными кусочками кода. В этой статье показано еще несколько этих скрытых сокровищ и приведены примеры того, как они могут быть полезны при использовании в ваших проектах.

Подробнее