Мои программы

Название Последняя версия Описание
extract 1.0 Простой скрипт на Perl для удобной работы с архивами в unix shell. Он автоматически определяет формат архива (по расширению) и распаковывает его. Если в архиве было несколько файлов и они не были помещены в директорию, скрипт автоматически создаёт для них директорию.
Morkov 0.01 Библиотека для работы с XML на C++. Позволяет записывать XML-данные непосредственно в программах на C++ с помощью синтаксиса, близкого к обычному синтаксису XML.
Исходники: http://github.com/iley/morkov/
VictoriaOS 0.03.1 VictoriaOS — это 16-битная операционная система, созданная в образовательных целях. Эта система в ее сегодняшнем виде не претендует ни на какое соперничество с другими современными системами. Она была создана исключительно в целях изучения общих принципов создания операционных систем и испытания своих идей.
Сайт системы: http://victoriaos.studenthost.ru
Исходники: http://github.com/iley/victoriaos
dcdnet.ru links script 1.0 Простой скрипт, добавляющий ссылки на last.fm и what.cd на страницах исполнителей и альбомов сайта dcdnet.ru. На данный момент сайт является закрытым, за инвайтами можете обращаться по почте, они у меня переодически бывают. Скрипт можно использовать в браузере Firefox с дополнением Greasemonkey. Теоретически в Opera и Chrome тоже должен работать.
Stack Checker 1.0 Небольшая программка, проверяющая корректность кода на ассемблере. Проверяет соответствие вызовов push и pop в начале и конце процедур (их количество и порядок), использование регистров без сохранения в стеке. Для корректной работы программы нужно перед началом каждой ассемблерной процедуры поставить волшебные комментарии. Пример:

; #proc test
; #input ax — первый агрумент, bx — второй аргумент
; #output cx — результат
test:
    push es
    push dx
    mov dx, bx
    add dx, bx
    ; ...
    pop es
    pop dx
    ret

В этом случае программа сообщит, что регистры bx, dx и es испорчены (bx не сохранён, а es и dx неверно восстановлены).
bfi + macrofuck 1.0 Интерпретатор языка Brainfuck и простейший препроцессор для этого языка. Препроцессор поддерживает следующие конструкции:
  • Объявление макросов директивой #define
  • Директива #include
  • Повторение инструкций (например "3+" транслируется в "+++")
  • Блоки кода (например "3{+>}" транслируется в "+>+>+>" )
Интерпретатор написан на C, макропроцессор — на Perl.

Раздел будет пополняться по мере того, как я буду приводить в порядок и выкладывать свои программы.