Дмитрий Булычев

Дмитрий Булычев


Исследовательские группы

Биография

Родился в Красноярске в 1970 году. Через десять лет переехал в Ленинград, где в 1987-м окончил среднюю школу № 384. В том же году поступил в ЛГУ (ныне СПбГУ), обучался последовательно на математико-механическом, биолого-почвенном и вновь математико-механическом факультетах, последний из которых и окончил в 1994 году.

В 1994—2012 гг. — разработчик в области языков программирования, компиляторов и языковых инструментов. Занимался такими проектами, как RescueWare (средство реинжиниринга, Relativity Technologies), IntelliJ IDEA (среда разработки, JetBrains), HaSCoL (язык описания аппаратного уровня, стартап).

Дмитрий преподает на кафедре системного программирования математико-механического факультета СПбГУ с момента ее создания в 1999 году. В 2004-м защитил диссертацию на соискание степени кандидата физико-математических наук («Прототипирование встроенных систем на основе описания макроархитектуры», под руководством проф. А. Н. Терехова). В настоящее время — доцент кафедры системного программирования и сотрудник JetBrains.

В 1994—1999 гг. параллельно с основной деятельностью обучался на кафедре музыкального искусства эстрады в Санкт-Петербургском государственном университете культуры и искусств, который окончил по специальности «джазовое фортепиано». Иногда принимает участие в местных концертах.

Профессиональная активность

  • Разработка и реализация языков программирования
  • Статический анализ
  • Функциональное программирование
  • Типы данных в языках программирования
  • Семантика языков программирования
  • Сертификационное программирование

Публикации

An Empirical Study of Partial Deduction for MiniKanren

March 2021

Ekaterina Verbitskaia, Daniil Berezun, Dmitry Boulytchev

Подробнее

Reimplementing the Wheel: Teaching Compilers with a Small Self-Contained One

2021

Daniil Berezun, Dmitry Boulytchev

TFPIE-2021

Подробнее

Relational Interpreters for Search Problems

2019

Proceedings of the 2019 miniKanren and Relational Programming Workshop

Подробнее

Certified Semantics for miniKanren

2019

Proceedings of the 2019 miniKanren and Relational Programming Workshop

Подробнее

Typed Relational Conversion

2018

Petr Lozov, Andrey Vyatkin, Dmitry Boulytchev

18th International Symposium on Trends in Functional Programming

Подробнее

Improving Refutational Completeness of Relational Search via Divergence Test

2018

Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming

Подробнее

Typed Embedding of a Relational Language in OCaml

2018

Proceedings ML/OCAML 2016

Подробнее

Combinators and Type-Driven Transformers in Objective Caml

2015

Dmitry Boulytchev

Science of Computer Programming

Подробнее

Precise Garbage Collection for C++ with a Non-Cooperative Compiler

2014

Daniil Berezun, Dmitry Boulytchev

Proceedings of the 10th Central and Eastern European Software Engineering Conference in Russia

Подробнее

Polynomial-Time Optimal Pretty-Printing Combinators with Choice

2014

Anton Podkopaev, Dmitry Boulytchev

Proceedings of 9th International Andrei Ershov Memorial Conference on Perspectives of System Informatics

Подробнее

Efficiently Scrapping Boilerplate Code in OCaml

2011

Dmitry Boulytchev, Sergey Mechtaev

Workshop on ML

Подробнее

Hardware Description Language Based on Message Passing and Implicit Pipelining

2010

Dmitry Boulytchev, Oleg Medvedev

Proceedings of the 2010 East-West Design & Test Symposium

Подробнее

BURS-based Instruction Set Selection

2006

Dmitry Boulytchev

Proceedings of 6th International Andrei Ershov Memorial Conference on Perspectives of System Informatics

Подробнее

Cooking Raw Types in Java

2005

Dmitry Boulytchev, Eugene Vigdorchik

Workshop on Multiparadigm Programming with Object-Oriented Languages

Подробнее

Macroarchitecture Description Language for Hardware/Software Codesign (in Russian)

2004

Dmitry Boulytchev

System Programming

Подробнее

Macroarchitecture Description for Hardware/Software Codesign (in Russian)

2004

Dmitry Boulytchev

System Programming

Подробнее

Efficient Code Generation Algorithms (in Russian)

2004

Dmitry Boulytchev

System Informatics

Подробнее

On Project-Specific Languages and Their Application in Reengineering

2002

Dmitry Boulytchev, Dmitry Koznov, Andrey A. Terekhov

Proceedings of the European Conference on Software Maintenance and Reengineering, CSMR 995802, pp. 177-185

Подробнее

An Empirical Study of Retargetable Compilers

2001

Dmitry Boulytchev, Dmitry Lomov

Proceedings of 4th International Andrei Ershov Memorial Conference on Perspectives of System Informatics

Подробнее

Pattern-matching and Identification of Structural Types in PL/1 (in Russian)

2000

Dmitry Boulytchev

Automated Reengeneering of Programs, Saint Petersburg

Подробнее