Andrei Alexandrescu, născut în 1969, este un programator și autor româno-american specializat în limbajele de programare C++ și D. Este recunoscut la nivel internațional pentru inovațiile sale în domeniul designului bazat policy-based design și template metaprogramming. Aceste idei revoluționare sunt detaliate în cartea sa, Modern C++ Design și au fost inițial implementate în biblioteca sa de programare, Loki. A implementat, de asemenea, conceptul de „move constructors” în biblioteca sa MOJO. Sub pseudonimul „Generic<Programming>”, Andrei Alexandrescu a contribuit frecvent la C/C++ Users Journal.
Înainte de a-și dedica timpul dezvoltării limbajului de programare, a lucrat ca cercetător științific la Facebook, până în august 2015. În august 2014, a devenit cetățean american.
Educație și carieră
După absolvirea Universității Politehnica din București cu o licență în Inginerie Electrică în iulie 1994, cariera sa a cunoscut o ascensiune rapidă. Primul său articol a fost publicat în C/C++ Users Journal în septembrie 1998. După o scurtă perioadă ca manager de program la Netzip, Inc., a devenit manager de dezvoltare la RealNetworks, Inc. În următorii ani, a obținut un masterat (2003) și un doctorat (2009) în științele calculatoarelor de la University of Washington.
Împreună cu Walter Bright, Andrei Alexandrescu a contribuit semnificativ la dezvoltarea limbajului de programare D, culminând cu publicarea cărții The D Programming Language în mai 2010. Între 2010 și 2014, alături de Herb Sutter și Scott Meyers, Andrei Alexandrescu a organizat o conferință tehnică anuală numită C++ and Beyond.
Contribuții notabile
Una dintre contribuțiile sale de seamă este clasa template Expected pentru C++. Andrei Alexandrescu a propus Expected<T> ca o clasă folosită ca valoare de retur, care conține fie un T, fie excepția care împiedică crearea acestuia. Această propunere vizează îmbunătățirea mecanismelor tradiționale de gestionare a erorilor în C++.
Andrei Alexandrescu rămâne o personalitate emblematică în comunitatea de programare. Contribuțiile sale semnificative au avut un impact profund asupra evoluției limbajelor de programare moderne.