Описание услуги
Я разрабатываю прикладной и исследовательский софт на языке Limbo — параллельном языке операционной системы Inferno, исполняемом виртуальной машиной Dis. За последние годы я сделал драйверы устройств, сетевые сервисы, файловые серверы, отдаваемые через протокол Styx, и небольшие распределённые утилиты, которые остаются читаемыми именно потому, что параллелизм выражен каналами и моделью CSP, а не блокировками и общей памятью. Обычно работа начинается с короткой заметки по проекту: я раскладываю задачу на взаимодействующие процессы, решаю, какие сообщения ходят по каким каналам, и намечаю, как работа распараллеливается и собирается обратно. Дальше — аккуратные модули на языке Limbo с небольшими интерфейсами и проверка байткода Dis как под хостовым Inferno, так и на целевой платформе, где коду предстоит жить. Мне привычны неудобные места: ссылки со сборкой мусора, пересекающие границы процессов, конструкции alt без голодания, корректные таймауты и отмена, а также особенности сборки инструментария Dis на современных системах. Я также восстанавливаю старый код на языке Limbo, который перестал компилироваться, документирую его и оставляю воспроизводимую сборку. Если у вас встраиваемая задача, распределённый прототип, ретро- или учебный проект вокруг Inferno либо просто нужен человек, свободно читающий язык, — я помогу. В результат входят прокомментированные исходники, сигнатуры модулей, рецепт сборки, тестовый стенд и пояснения, как связаны каналы. Компромиссы я объясняю простыми словами и держу дизайн достаточно компактным, чтобы ваша команда сопровождала его сама.