8 repositorios
Compilers that translate source code into Java bytecode for execution on the Java Virtual Machine.
Distinct from Runtime Bytecode Compilation: Distinct from general runtime bytecode compilation: specifically targets JVM bytecode rather than other runtime environments.
Explore 8 awesome GitHub repositories matching programming languages & runtimes · JVM Bytecode Compilers. Refine with filters or upvote what's useful.
Scala is a statically typed programming language and compiler that combines object-oriented and functional programming paradigms. It serves as a cross-platform runtime language capable of targeting the Java Virtual Machine and JavaScript to share logic between backend servers and web frontends. The project provides a functional programming framework with immutable data structures and higher-order functions to build reliable concurrent and distributed applications. It distinguishes itself through deep interoperability with Java and JavaScript ecosystems and the ability to transform code into n
Translates high-level source code into JVM bytecode for cross-platform execution on the Java Virtual Machine.
Clojure is a general-purpose, functional programming language hosted on the Java Virtual Machine. It is a homoiconic S-expression language that represents programs as nested data structures, allowing code to be manipulated and evaluated as data. The project provides a framework for JVM interoperability, enabling the invocation of Java methods and integration with other JVM-based languages. It distinguishes itself through a persistent data structure library that uses bitmapped vector tries to manage immutable collections and a programmatic REPL for interactive software development and real-tim
Transforms high-level functional expressions into Java bytecode for execution on the Java Virtual Machine.
Scala 3 is an open-source, statically typed programming language that compiles to JVM bytecode, combining object-oriented and functional programming paradigms. Its core identity is defined by a sophisticated type system that includes traits, generics, union types, and a dependent object type system where types can depend on runtime values through path-dependent and singleton types. The language distinguishes itself through several advanced type-level and metaprogramming capabilities. It features a contextual abstraction mechanism using given instances and using clauses for compile-time implic
Compiles Scala 3 source code into Java bytecode that runs on the Java Virtual Machine.
Groovy es un lenguaje de programación para la JVM y un framework de metaprogramación que proporciona un entorno compatible con Java para construir aplicaciones. Funciona como un lenguaje de scripting dinámico y una herramienta para crear lenguajes específicos de dominio (DSL), permitiendo la ejecución de scripts personalizados y la creación de mini-lenguajes especializados con una sintaxis concisa. El proyecto se distingue por su capacidad para modificar el comportamiento del programa y las definiciones de clases mediante metaprogramación tanto en tiempo de compilación como en tiempo de ejecución. Utiliza un modelo de tipado híbrido que combina la resolución dinámica de métodos con un chequeo de tipos estático opcional para equilibrar la flexibilidad y el rendimiento de ejecución. El lenguaje cubre una amplia gama de capacidades, incluyendo patrones de programación funcional, transformaciones de árboles de sintaxis abstracta (AST) y la integración directa de bibliotecas de Java. También incluye utilidades de seguridad para prevenir inyecciones SQL, asegurar el parsing de XML y garantizar un parsing seguro de datos estructurados. El sistema traduce la sintaxis de alto nivel a bytecode de la JVM para su ejecución en cualquier Java Virtual Machine compatible.
Translates high-level syntax into compatible Java bytecode for execution on the Java Virtual Machine.
Aviatorscript es un lenguaje de scripting de alto rendimiento y un motor de evaluación de expresiones diseñado para la integración dentro de aplicaciones Java. Permite la ejecución dinámica de fórmulas matemáticas y lógicas mediante la compilación de instrucciones de script directamente en bytecode de Java en tiempo de ejecución. El motor se distingue por transformar la lógica dinámica en instrucciones legibles por máquina, permitiendo velocidades de ejecución casi nativas. Incluye un mecanismo de caché incorporado que almacena bytecode compilado para eliminar la sobrecarga de análisis y compilación redundante durante la ejecución repetida de fórmulas. Esta librería soporta el procesamiento de reglas complejas y la personalización de lógica en tiempo de ejecución, proporcionando un puente que mapea llamadas a funciones a nivel de script con métodos del lenguaje anfitrión. Gestiona los tipos de variables dinámicamente, permitiendo una ejecución de script flexible sin requerir declaraciones explícitas o pasos de compilación estática.
Compiles dynamic script instructions into Java bytecode to achieve native-speed performance for embedded application logic.
Rhino es un motor de JavaScript basado en Java que implementa una capa de compatibilidad con ECMAScript para su ejecución dentro de una máquina virtual Java. Sirve como un motor de scripting incrustado y un puente de scripting, permitiendo que el código JavaScript se integre y ejecute dentro de aplicaciones Java. El proyecto facilita la comunicación directa entre lenguajes al mapear clases y objetos de Java en un entorno JavaScript. Esta integración permite que los scripts interactúen con servicios internos del sistema y objetos host nativos a través de un mecanismo de mapeo dedicado. El motor optimiza el rendimiento compilando JavaScript en bytecode de Java y admite un modelo de ejecución de modo dual para equilibrar el tiempo de inicio y la velocidad de ejecución. Incluye capacidades para la serialización de datos entre lenguajes, procesamiento XML y la gestión de contextos de ejecución aislados para tareas concurrentes. Se proporciona un shell interactivo para la edición y depuración de lógica en tiempo real.
Translates JavaScript source code into Java bytecode for high-performance execution on the JVM.
JRuby is a Ruby language implementation that runs on the Java Virtual Machine. It serves as a cross-language runtime and execution environment, allowing Ruby code to run on the JVM and share memory with Java applications. The project functions as a bridge between Ruby and Java, enabling Ruby scripts to call Java classes and libraries directly. It also provides a mechanism to embed a Ruby interpreter into Java applications to allow for dynamic scripting. The runtime leverages the JVM for system scalability and ensures a consistent execution environment across different operating systems.
Translates Ruby source code into Java bytecode for direct execution on the JVM.
Frege is a purely functional programming language that compiles to JVM bytecode, providing Haskell-like semantics for the Java platform. It is built around a Haskell-inspired compiler that implements non-strict evaluation and a static type inference system to ensure data immutability and prevent side effects. The project distinguishes itself through a sophisticated type system featuring rank polymorphism, type-class based dispatch, and static purity enforcement. It includes a JVM language bridge and a foreign function interface that map Java classes and interfaces into functional types, allow
Translates functional source code into Java bytecode for execution on the Java Virtual Machine.