Jump to content

Андрей Александреску

Андрей Александреску
Александреску на ACCU 2009
Рожденный 1969 (54–55 лет)
Национальность румынский , американский [2]
Образование Политехнический университет Бухареста и Вашингтонский университет
Занятие Разработчик D. языка программирования
Известный Эксперт по программированию на C++ и D. [3]
Супруг Санда Александреску
Веб-сайт земля .org

Тюдор Андрей Кристиан Александреску [4] (род. 1969) — румынско-американский язык C++ и D. [3] программист и автор. Он особенно известен своей новаторской работой по проектированию на основе политик, реализованному с помощью метапрограммирования шаблонов . Эти идеи сформулированы в его книге «Современный дизайн C++» и впервые были реализованы в его библиотеке программирования Loki . Он также реализовал концепцию « конструкторов перемещения » в своей библиотеке MOJO. [5] Он участвовал в журнале пользователей C/C++ под подписью «Generic<Programming>».

Он стал гражданином США в августе 2014 года. [6]

Образование и карьера

[ редактировать ]

Александреску получил степень бакалавра электротехники в Бухареста Политехническом университете в июле 1994 года. [7] [8]

Его первая статья была опубликована в журнале C/C++ Users Journal он был менеджером программы в Inc. С апреля 1999 года по февраль 2000 года Netzip , в сентябре 1998 года . менеджер с февраля 2000 г. по сентябрь 2001 г. [7]

Александреску получил степень магистра (2003 г.) и доктора философии (2009 г.) в области компьютерных наук в Вашингтонском университете . [9] [10] [11]

В 2006 году Александреску начал помогать Уолтеру Брайту в разработке языка программирования D. [12] В мае 2010 года он выпустил книгу под названием « Язык программирования D» .

С 2010 по 2014 год Александреску, Херб Саттер и Скотт Мейерс проводили небольшую ежегодную техническую конференцию под названием C++ and Beyond .

Александреску проработал научным сотрудником в Facebook более пяти лет, а затем покинул компанию в августе 2015 года, чтобы сосредоточиться на разработке D. языка программирования [13]

В январе 2022 года Александреску начал работать в Nvidia в качестве главного научного сотрудника. [14]

Ожидается класс шаблона для C++ , который находится в стадии разработки стандартов C++. [15] [16] Александреску предложил [17] Expected<T> как класс для использования в качестве возвращаемого значения, которое содержит либо T, либо исключение, препятствующее его созданию, что является улучшением по сравнению с использованием исключительно кодов возврата или исключений. Expected можно рассматривать как ограничение типов сумм (объединений) или алгебраических типов данных в различных языках, например Hope или более поздних Haskell и Gallina ; или механизма обработки ошибок Google Go или типа Result в Rust .

Он объясняет преимущества Expected<T> как:

  • Связывает ошибки с вычислительными целями
  • Естественно, допускает несколько исключений в полете
  • Переключение между стилями «обработка ошибок» и «генерация исключений».
  • Возможна телепортация через границы потоков, через границы подсистемы nothrow и во времени (сохранить сейчас, бросить позже)
  • Собирайте, группируйте, объединяйте исключения

Например, вместо любого из следующих общих прототипов функций:

int parseInt(const string&); // Returns 0 on error and sets errno.

или

int parseInt(const string&); // Throws invalid_input or overflow

он предлагает следующее:

Expected<int> parseInt(const string&); // Returns an expected int: either an int or an exception

Защита прицела

[ редактировать ]

С 2000 г. [18] и далее Александреску пропагандировал и популяризировал идиому защиты прицела. Он представил ее как языковую конструкцию в книге Д. [19] Он был реализован другими на многих других языках. [20] [21]

Библиография

[ редактировать ]
  • Андрей Александреску (февраль 2001 г.). Современный дизайн на C++ : применение общих шаблонов программирования и проектирования . Аддисон-Уэсли. ISBN  978-0-201-70431-0 .
  • Херб Саттер , Андрей Александреску (ноябрь 2004 г.). Стандарты кодирования на C++: 101 правило, рекомендации и передовой опыт . Аддисон-Уэсли. ISBN  978-0-321-11358-0 .
  • Андрей Александреску (июнь 2010 г.). Язык программирования D. Аддисон-Уэсли. ISBN  978-0-321-63536-5 .
  1. ^ «Эрдани.com» .
  2. ^ андралекс (14 августа 2014 г.). "Нет" . Реддит . Архивировано из оригинала 16 июня 2022 года.
  3. ^ Перейти обратно: а б Мец, Кейд (7 июля 2014 г.). «Следующий большой язык программирования, о котором вы никогда не слышали» . Проводной . Проверено 27 июля 2014 г. Сегодня Александреску работает научным сотрудником в Facebook, где он и его команда программистов используют D для изменения небольших частей масштабной работы компании.
  4. ^ «Фонд языка D» . dlang.org . Проверено 5 июня 2024 г.
  5. ^ Александреску, Андрей (1 февраля 2003 г.). «Перемещение конструкторов» . Журнал доктора Добба . Архивировано из оригинала 7 мая 2009 года . Проверено 25 марта 2009 г.
  6. ^ «Шестнадцать лет назад, в 28 лет, я приземлился в Нью-Йорке с 300 долларами на счету. Сегодня я стал гражданином США. Это было дикое приключение, которое, я надеюсь, продолжится! : pics» . 14 августа 2014 г.
  7. ^ Перейти обратно: а б «Андрей Александреску: Резюме» . Архивировано из оригинала 7 апреля 2011 года.
  8. ^ Весенняя конференция ACCU 2001. Архивировано 11 августа 2011 года в Wayback Machine.
  9. ^ «АККУ::Спикеры» . Members.accu.org .
  10. ^ «АККУ::Спикеры» . Members.accu.org .
  11. ^ Компьютерные науки и инженерия, недавний доктор философии. Выпускники (лето 2009 г.) .марка Вашингтонского университета.
  12. ^ «Об Андрее Александреску, докторе философии» .
  13. ^ «Продвижение работы над языком D и его основой» . 25 августа 2015 года . Проверено 28 августа 2015 г.
  14. ^ «Андрей Александреску» . LinkedIn.com . Проверено 15 декабря 2023 г.
  15. ^ [ Ботет; Талбот. «Предложение добавить служебный класс для представления ожидаемой монады» (PDF) . Архивировано из оригинала (PDF) 19 августа 2014 года.
  16. ^ "STD-make/P0323r2.md в мастере · viboes/STD-make" . Гитхаб . 21 октября 2021 г.
  17. ^ Александреску. «Обработка систематических ошибок в C++» . Архивировано из оригинала 25 апреля 2013 года.
  18. ^ Андрей Александреску; Петру Маргинян. «Общий вариант: измените способ написания безопасного к исключениям кода — навсегда» . Архивировано из оригинала 1 октября 2012 года.
  19. ^ «Безопасность исключений — язык программирования D» .
  20. ^ «Scope::Guard — управление ресурсами с лексической областью — Metacpan.org» . Metacpan.org .
  21. ^ «Скоугард – Ржавчина» .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: b67cccea6a4b7685b0b3e11e769e2fd3__1717597080
URL1:https://arc.ask3.ru/arc/aa/b6/d3/b67cccea6a4b7685b0b3e11e769e2fd3.html
Заголовок, (Title) документа по адресу, URL1:
Andrei Alexandrescu - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)