". ">
stringtranslate.com

Andrei Alexandrescu

Tudor Andrei Cristian Alexandrescu [4] (nacido en 1969) es un programador y autor rumano-estadounidense de lenguaje C++ y D [3] . Es particularmente conocido por su trabajo pionero en diseño basado en políticas implementado a través de metaprogramación de plantillas . Estas ideas se articulan en su libro Modern C++ Design y se implementaron por primera vez en su biblioteca de programación, Loki . También implementó el concepto de " constructores de movimiento " en su biblioteca MOJO. [5] Contribuyó al C/C++ Users Journal bajo el seudónimo "Generic<Programming>".

Se convirtió en ciudadano estadounidense en agosto de 2014. [6]

Educación y carrera

Alexandrescu recibió una licenciatura en Ingeniería Eléctrica de la Universidad Politécnica de Bucarest ( Universitatea Politehnica din București ) en julio de 1994. [7] [8]

Su primer artículo fue publicado en el C/C++ Users Journal en septiembre de 1998. Fue gerente de programas de Netzip, Inc. desde abril de 1999 hasta febrero de 2000. Cuando la empresa fue adquirida por RealNetworks, Inc. , trabajó allí como gerente de desarrollo desde febrero de 2000 hasta septiembre de 2001. [7]

Alexandrescu obtuvo una maestría (2003) y un doctorado (2009) en ciencias de la computación de la Universidad de Washington . [9] [10] [11]

En 2006, Alexandrescu comenzó a ayudar a Walter Bright en el desarrollo del lenguaje de programación D. [12] Publicó un libro titulado The D Programming Language en mayo de 2010.

De 2010 a 2014, Alexandrescu, Herb Sutter y Scott Meyers organizaron una pequeña conferencia técnica anual llamada C++ and Beyond .

Alexandrescu trabajó como científico investigador en Facebook durante más de 5 años, antes de dejar la empresa en agosto de 2015 para centrarse en el desarrollo del lenguaje de programación D. [13]

En enero de 2022, Alexandrescu comenzó a trabajar en Nvidia como investigador científico principal. [14]

Contribuciones

El lenguaje de programación D

Junto con Walter Bright , Andrei ha sido uno de los dos principales diseñadores del lenguaje de programación D y el principal mantenedor de la biblioteca estándar Phobos desde 2007 hasta 2019. Es el fundador de la D Language Foundation. Entre sus contribuciones se incluye el módulo ranges. Es el autor del libro "The D Programmming Language".

Esperado

Expected es una clase de plantilla para C++ que está en la vía de los estándares de C++. [15] [16] Alexandrescu propone [17] Expected<T> como una clase para usar como un valor de retorno que contiene una T o la excepción que impide su creación, lo que es una mejora sobre el uso de códigos de retorno o excepciones exclusivamente. Expected puede considerarse como una restricción de los tipos de suma (unión) o tipos de datos algebraicos en varios lenguajes, por ejemplo, Hope , o los más recientes Haskell y Gallina ; o del mecanismo de manejo de errores de Go de Google , o el tipo Result en Rust .

Explica los beneficios de Expected<T>:

Ejemplo

Por ejemplo, en lugar de cualquiera de los siguientes prototipos de funciones comunes:

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

o

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

Propone lo siguiente:

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

Protector de alcance

Desde el año 2000 [18] en adelante, Alexandrescu ha defendido y popularizado el modismo de protección de alcance. Lo ha introducido como una construcción del lenguaje en D. [19] Otros lo han implementado en muchos otros lenguajes. [20] [21]

Bibliografía

Referencias

  1. ^ "Erdani.com".
  2. ^ andralex (14 de agosto de 2014). "No". Reddit . Archivado desde el original el 16 de junio de 2022.
  3. ^ ab Metz, Cade (7 de julio de 2014). "El próximo gran lenguaje de programación del que nunca has oído hablar". Wired . Consultado el 27 de julio de 2014. Hoy, Alexandrescu es un científico investigador en Facebook, donde él y un equipo de programadores están usando D para rediseñar pequeñas partes de la enorme operación de la empresa.
  4. ^ "The D Language Foundation". dlang.org . Consultado el 5 de junio de 2024 .
  5. ^ Alexandrescu, Andrei (1 de febrero de 2003). "Move Constructors". Diario del Dr. Dobb . Archivado desde el original el 7 de mayo de 2009. Consultado el 25 de marzo de 2009 .
  6. ^ "Hace dieciséis años, a los 28, llegué a Nueva York con 300 dólares a mi nombre. Hoy me convertí en ciudadana estadounidense. Ha sido un viaje alocado que espero que continúe. : fotos". 14 de agosto de 2014.
  7. ^ ab "Andrei Alexandrescu: Resumen". Archivado desde el original el 7 de abril de 2011.
  8. ^ Conferencia de primavera de la ACCU de 2001 Archivado el 11 de agosto de 2011 en Wayback Machine.
  9. ^ "ACCU:: Oradores". members.accu.org .
  10. ^ "ACCU:: Oradores". members.accu.org .
  11. ^ Ciencias de la Computación e Ingeniería, Graduados Recientes de Doctorado (Verano de 2009).mark Universidad de Washington.
  12. ^ "Acerca de Andrei Alexandrescu, PhD".
  13. ^ "Avanzando con el trabajo sobre el lenguaje D y sus fundamentos". 25 de agosto de 2015. Consultado el 28 de agosto de 2015 .
  14. ^ "Andréi Alexandrescu". LinkedIn.com . Consultado el 15 de diciembre de 2023 .
  15. ^ [ Botet; Talbot. "Una propuesta para añadir una clase de utilidad para representar la mónada esperada" (PDF) . Archivado desde el original (PDF) el 19 de agosto de 2014.
  16. ^ "STD-make/P0323r2.md en master · viboes/STD-make". GitHub . 21 de octubre de 2021.
  17. ^ Alexandrescu. «Manejo sistemático de errores en C++». Archivado desde el original el 25 de abril de 2013.
  18. ^ Andrei Alexandrescu; Petru Marginean. "Genérico: cambie la forma en que escribe código seguro frente a excepciones, para siempre". Archivado desde el original el 1 de octubre de 2012.
  19. ^ "Seguridad de excepciones - Lenguaje de programación D".
  20. ^ "Scope::Guard - gestión de recursos con alcance léxico - metacpan.org". metacpan.org .
  21. ^ "Protector de alcance - Óxido".

Enlaces externos