Red de conocimiento informático - Aprendizaje de código fuente - Beida Jade Bird Changping comparte las características de GraalVM

Beida Jade Bird Changping comparte las características de GraalVM

Los programadores generalmente dominan muchas herramientas de programación para mejorar la eficiencia de su trabajo, pero si hay una herramienta de programación que se puede aplicar a todos los lenguajes de programación, creo que debería ser GraalVM Today, Peking University Jade. Bird Ven al campus de Changping para conocer las características de GraalVM.

1. Java de alto rendimiento

GraalVM El nombre completo de Graal es compilador Graal. Graal es un compilador "universal", es decir, aunque es una implementación única, puede usarse para múltiples propósitos. Por ejemplo, podemos usar Graal para la compilación anticipada y la compilación justo a tiempo, así como para compilar múltiples lenguajes de programación.

2. Java con poca memoria y velocidad de inicio rápida

Java es potente para procesos de ejecución prolongada, pero los procesos de ejecución corta pueden verse afectados por un tiempo de inicio prolongado y un gran uso de memoria. impacto.

3. Combina JavaScript, Java, Ruby y lenguaje R

Además de Java, GraalVM también incluye implementaciones de JavaScript, Ruby, lenguaje R y Python. Todos se desarrollan utilizando un marco de implementación de lenguaje llamado Truffle, que permite intérpretes de lenguaje simples pero de alto rendimiento. Al desarrollar intérpretes de idiomas utilizando Truffle, Graal se utiliza automáticamente como compilador JIT. Por lo tanto, Graal se puede utilizar no solo como compilador y precompilador JIT para Java, sino también como compilador JIT para JavaScript, Ruby, lenguaje R y Python.

4. Ejecute idiomas locales en JVM

GraalVM también admite el lenguaje C.

De hecho, GraalVM admite el lenguaje C ejecutando código de bits LLVM en lugar de ejecutar código C directamente. Es decir, podemos utilizar las herramientas existentes para C, pero también para otros lenguajes que puedan generar LLVM, como C, Fortran y otros que puedan aparecer en el futuro. Para simplificar la demostración, estoy usando la versión de archivo único de gzip mantenida por Stephen McCamant. Para simplificar, simplemente fusiona el código fuente de gzip y la configuración de autoconf en un solo archivo. Todavía necesito modificar algunas cosas para que funcione en macOS, pero no en GraalVM.

5. Herramientas para todos los lenguajes de programación

Si programas en Java, probablemente estés acostumbrado a utilizar herramientas de alta calidad como IDE, depuradores y perfiladores, y estas herramientas lo son. No está disponible para todos los lenguajes de programación. Pero si usa un lenguaje en GraalVM, puede obtener dichas herramientas.

6. Ampliación de aplicaciones basadas en JVM

Además de estar disponibles como implementaciones de lenguajes independientes y para programación en varios idiomas, estos lenguajes y herramientas también se pueden integrar en ellos. Aplicaciones Java. La nueva org.graalvm.polyglotAPI se puede utilizar para cargar y ejecutar código en otros idiomas.