LLVM

LLVM
Información general
Tipo de programa Compilador
Desarrollador LLVM Developer Group
Lanzamiento inicial 24 de octubre de 2003
Licencia University of Illinois/NCSA Open Source License y Apache License v2.0 with LLVM Exceptions
Estado actual En desarrollo
Información técnica
Programado en C++, C y lenguaje ensamblador
Plataformas admitidas Multiplataforma, NetBSD, FreeBSD, OpenBSD, Linux, MINIX 3, Microsoft Windows e Illumos
Versiones
Última versión estable 18.1.8 (info) ( 18 de junio de 2024)
Enlaces

LLVM (anteriormente conocido como Low Level Virtual Machine, o Máquina Virtual de Bajo Nivel) es una infraestructura para desarrollar compiladores, escrita a su vez en el lenguaje de programación C++, que está diseñada para optimizar el tiempo de compilación, el tiempo de enlazado, el tiempo de ejecución y el "tiempo ocioso" en cualquier lenguaje de programación que el usuario quiera definir. Implementado originalmente para compilar C y C++, el diseño agnóstico de LLVM con respecto al lenguaje, y el éxito del proyecto han engendrado una amplia variedad de lenguajes, incluyendo Objective-C, Fortran, Ada, Haskell, bytecode de Java, Python, Ruby, ActionScript, GLSL, Clang, Rust, Gambas y otros.

El proyecto LLVM comenzó en 2000 en la Universidad de Illinois en Urbana-Champaign, bajo la dirección de Vikram Adve y Chris Lattner. LLVM fue desarrollado inicialmente bajo la Licencia de código abierto de la Universidad de Illinois, una licencia de tipo BSD. En 2005, Apple Inc. contrató a Lattner y formó un equipo para trabajar en el sistema de LLVM para varios usos dentro de los sistemas de desarrollo de Apple.[1]​ LLVM es parte integrante de las últimas herramientas de desarrollo de Apple para Mac OS X e iOS.[2]

El nombre "LLVM" era en principio las iniciales de "Low Level Virtual Machine", pero esta denominación causó una confusión ampliamente difundida, puesto que las máquinas virtuales son solo una de las muchas cosas que se pueden construir con LLVM. Cuando la extensión del proyecto se amplió incluso más, LLVM se convirtió en un proyecto paraguas que incluye una multiplicidad de otros compiladores y tecnologías de bajo nivel, haciendo el nombre aún menos adecuado. Por tanto, el proyecto abandonó[3]​ las iniciales. Actualmente, LLVM es una "marca" que se aplica al proyecto paraguas, la representación intermedia LLVM, el depurador LLVM, la biblioteca estándar de C++ definida por LLVM, etc.

  1. Adam Treat (19 de febrero de 2005). «mkspecs and patches for LLVM compile of Qt4». Archivado desde el original el 4 de octubre de 2011. Consultado el 27 de enero de 2012. 
  2. Apple (ed.). «Apple LLVM Compiler». Developer Tools. Consultado el 27 de enero de 2012. 
  3. «Chris Lattner discusses the name LLVM». Archivado desde el original el 12 de enero de 2012. Consultado el 22 de diciembre de 2011. 

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Tubidy