38 个仓库
Compilers that translate high-level source code into executable bytecode for a virtual machine.
Distinct from Bytecode Compiled Languages: Distinct from general bytecode compiled languages: focuses on the compilation process itself rather than the language identity.
Explore 38 awesome GitHub repositories matching programming languages & runtimes · Source-to-Bytecode Compilers. Refine with filters or upvote what's useful.
pkg is a Node.js executable packager and cross-platform binary compiler. It bundles a project and its dependencies into a single standalone executable file that runs without a pre-installed runtime on the target machine. The tool uses a virtual filesystem bundler to embed project assets and native modules into a binary snapshot. It includes a bytecode obfuscator that compiles source code into bytecode to prevent the extraction of raw logic. The project supports cross-platform distribution, allowing the generation of binaries for different operating systems and architectures from a single hos
Compiles JavaScript source into binary bytecode to hide raw logic within the executable.
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
Provides a compiler that transforms high-level functional expressions into optimized Java bytecode for the JVM.
WasmEdge is an extensible WebAssembly runtime that executes WebAssembly bytecode in a secure sandbox for cloud, edge, and embedded applications. It functions as a multi-language compiler, compiling applications written in Rust, JavaScript, Go, and Python into WebAssembly bytecode for sandboxed execution, and as a server-side JavaScript runtime that runs JavaScript programs with ES6 modules, NPM packages, and Node.js-compatible APIs. The runtime also serves as an AI inference runtime, executing AI models from JavaScript using WASI-NN plug-ins for inference tasks on personal devices and edge har
Compiles applications written in Rust, JavaScript, Go, and Python into WebAssembly bytecode for sandboxed execution.
This project is an educational implementation of a relational database engine written in C. It functions as a SQLite clone, demonstrating the internal mechanics of a database system through a C-based systems project that focuses on manual memory management and file I/O. The engine is distinguished by its use of a bytecode virtual machine, which executes database operations by compiling SQL statements into low-level instructions. It utilizes a B-tree database engine to organize records in a balanced tree structure, ensuring efficient insertion, search, and range scanning. The system covers co
Translates structured SQL text into low-level executable bytecode for the virtual machine.
HackMyResume is a command-line tool that generates polished résumés and CVs in multiple formats from a single JSON or YAML data source. It validates résumé documents against the FRESH or JSON Resume schema, converts between these two formats, and produces output in HTML, Markdown, LaTeX, MS Word, PDF, plain text, JSON, XML, and YAML. The tool supports custom themes through a plugin architecture, allowing users to apply visual styling via Handlebars templates and register custom helpers for extended template logic. It can merge multiple résumé JSON files into one, overriding generic data with
Compiles a single JSON or YAML resume source into any supported output format through a centralized build process.
该项目是一个用于 ESP8266 WiFi 芯片的 Lua 固件环境,为 WiFi SoC 硬件提供嵌入式 Lua 解释器和开发框架。它作为一个基于 C 的 Espressif 非 OS SDK 封装器,支持执行异步脚本来管理无线通信和硬件外设。 该环境集成了 SPIFFS Flash 文件系统,用于直接在非易失性内存上存储持久化脚本和数据。为了优化有限的硬件资源,该系统利用原地执行(Execute-in-place)技术,直接从 Flash 内存运行只读常量和指令,以节省系统 RAM。 该项目涵盖无线连接管理、网络服务实现和硬件外设映射。它包括用于固件编译、Lua 脚本编译为字节码以及生成目标部署文件系统镜像的工具。
Compiles Lua source scripts into binary bytecode images to optimize memory and CPU overhead on limited hardware.
Enso is a visual dataflow programming environment and multi-language data processing engine that compiles Enso, Python, Java, and JavaScript into a unified representation with a shared memory model for zero-overhead inter-language calls. It functions as a self-service data preparation and analysis platform where users can build data pipelines by connecting nodes in a graph, switching between a no-code visual interface and a code view while keeping all changes reviewable. The platform also serves as a cloud data workflow scheduler and API exposer, allowing workflows to run on a timetable or be
Compiles Enso, Python, Java, and JavaScript into a common representation with a unified memory model for zero-overhead interop.
Haxe is a statically typed, multi-target programming language and open-source compiler toolkit that translates a single codebase into native executables and scripts for JavaScript, C++, C#, Java, Python, Lua, PHP, and Flash targets. It provides a unified type system with automatic type inference, a compile-time macro system for code transformation and generation, conditional compilation directives, and a static analysis engine that enforces null safety and eliminates dead code to produce smaller, safer outputs. The language is supported by the HashLink virtual machine, which executes platform
Compiles Haxe source code into platform-agnostic bytecode for the HashLink virtual machine.
OCaml is a strongly typed functional language featuring a sophisticated type system and a focus on safety and expressiveness. It provides a comprehensive compiling toolchain that transforms source code into either portable bytecode or high-performance native binaries. The project is distinguished by a shared memory parallel runtime that executes computations across multiple processor cores using domains, and an algebraic effect system for managing side effects and control flow through execution context handlers. It also includes a dedicated parser generator to automatically create lexers and
Produces portable, compact bytecode that runs within an interpreter for faster compilation and cross-platform compatibility.
Spin is a WebAssembly serverless framework and development toolchain for building and running portable microservices. It functions as an event-driven orchestrator and runtime that executes WebAssembly components, allowing developers to map HTTP requests, Redis messages, and cron schedules to specific modules. The project distinguishes itself by implementing a Wasm-based AI inference gateway, enabling components to perform model inference and generate text embeddings. It utilizes the WebAssembly Component Model and WASI for language-agnostic composition and portable host interfacing, while emp
Compiles source code from multiple programming languages into WebAssembly bytecode for serverless execution.
Duktape 是一个可嵌入的 JavaScript 引擎和便携式脚本运行时,专为集成到 C 和 C++ 应用程序中而设计。它作为一个轻量级的 ECMAScript 运行时,提供了一个 C-JavaScript 桥接器,用于在原生代码和脚本执行环境之间交换数据和调用函数。 该引擎包含一个 ECMAScript 字节码编译器,允许将编译后的函数序列化并缓存到磁盘,以减少应用程序启动时间。它使用符合 CommonJS 标准的模块加载器来组织脚本依赖项。 该运行时涵盖了多种功能,包括用于异步执行的协作式协程调度,以及结合了引用计数与标记清除收集的混合垃圾回收系统。它还通过 JSON 代理提供调试协议,并支持针对受限硬件的自定义调试传输。 构建配置通过 YAML 驱动的设置进行管理,以生成特定于平台的 C 头文件。
Enables the serialization of compiled function bytecode to disk to improve execution speed and startup time.
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
Translates Scala 3 source code into executable bytecode, enabling developers to build and run applications.
mruby is a lightweight Ruby interpreter designed to be embedded into C applications. It compiles Ruby source code into a compact, platform-independent bytecode that executes on a register-based virtual machine, and exposes a stable C API for host programs to initialize the interpreter, load bytecode, and invoke Ruby methods at runtime. The interpreter distinguishes itself through a tightly coupled parser and compiler that performs lexical analysis, syntax parsing, and bytecode generation in a single pass without constructing an intermediate AST, minimizing memory overhead. It also includes a
Compiles Ruby source files into portable bytecode that any compatible interpreter can load and run.
electron-vite 是一个构建系统和多进程打包编排工具,利用 Vite 为 Electron 应用编译和打包主进程、预加载脚本及渲染进程。它作为桌面应用脚手架,提供多种模板,可将各类前端框架集成到标准化的项目结构中。 该项目通过集成源码保护脱颖而出,利用 V8 字节码混淆器将 JavaScript 编译为字节码并混淆字符串,从而防止逆向工程。它还能通过隔离多个窗口和执行上下文中的包及共享代码块,来管理复杂的桌面架构。 该工具集涵盖了广泛的功能,包括用于跨平台安装程序的自动化打包流水线、支持热模块替换的开发服务器编排,以及原生模块和 WebAssembly 的管理。此外,它还支持环境作用域划分和二进制模块外部化配置,以优化生产环境构建。
Protects intellectual property by compiling JavaScript source code into V8 bytecode to hinder reverse engineering.
mQuickjs is a compact JavaScript engine designed for memory-constrained devices, such as microcontrollers, requiring as little as 10 KB of RAM and 100 KB of ROM. It achieves this through a fixed-buffer memory allocation scheme that avoids system heap usage, a compacting tracing garbage collector that eliminates fragmentation, and a ROM-embedded standard library that reduces both memory footprint and startup time. The engine compiles JavaScript source into portable bytecode that can be stored in persistent memory and executed without reparsing, and it emulates IEEE 754 floating-point arithmetic
Compiles JavaScript source into portable bytecode for persistent storage and execution without recompilation.
该项目是为学习 Flutter 框架和 Dart 语言的开发者设计的学习资源、文档和样板模板集合。它提供了一套全面的安装指南、配置教程和参考材料,以协助构建跨平台移动应用程序。 该仓库通过广泛的实用示例脱颖而出,包括 Dart 语言语法演示、跨平台 UI 模式和项目模板。它专门提供了用于实现原生平台插件和使用方法通道(method channels)桥接硬件功能的示例代码。 该代码库涵盖了广泛的开发功能,包括状态驱动的 UI 渲染和基于小部件的布局构建。它包括导航路由、通过 SQLite 和共享偏好设置进行本地数据持久化,以及用于推送通知和硬件传感器的系统级集成的实现。 该项目还提供了用于环境配置、开发工具验证和逻辑测试的材料,以确保跨本地机器的一致设置。
Explains the compilation of source code into machine-efficient bytecode to optimize application startup and execution.
Hy 是 Python 的一种 Lisp 实现,允许编写编译为 Python 字节码的 Lisp 语法。它作为一种基于 Python 的 Lisp 方言和 S 表达式语言运行,提供对 Python 标准库和生态系统的完全访问权限。 该语言专注于基于宏的元编程,具有 AST 遍历宏系统和读取器宏,允许自定义语法转换和解析规则。它能够操纵抽象语法树以扩展语言功能。 该项目包括一个用于交互式开发的读取-求值-打印循环(REPL),并支持独立脚本执行。它涵盖了函数式编程功能,例如结构化模式匹配以及使用 async 和 await 构造的异步程序开发。 源代码可以转换为等效的 Python 源文件以供检查或分发。
Compiles Lisp source code directly into Python bytecode for execution by the Python virtual machine.
Vyper 是一种以安全为导向的强类型编程语言与编译器,专为创建在以太坊虚拟机(EVM)上执行的智能合约而设计。它利用 Python 风格的语法来定义合约逻辑与状态,并作为形式化验证的目标,以实现机器可检查的正确性证明。 该语言通过优先考虑可预测性与安全性的严格架构约束脱颖而出。它通过禁止递归来强制执行无环调用图,并强制要求有界循环以确保静态 Gas 预测。此外,它还具备用于金融计算的原生定点十进制类型,以防止精度损失。 该项目为区块链开发提供了一套全面的能力,包括强类型状态管理、用于公钥恢复的加密原语,以及内置的重入保护。它通过模块化的接口与合约部署系统,支持行业代币标准、去中心化金融工具以及链上治理系统的实现。 该编译器将高级源代码转换为面向 EVM 的字节码与 ABI 定义,同时提供用于自动化合约测试与构建完整性验证的工具。
Compiles high-level typed source code into EVM-compatible bytecode for execution on the Ethereum Virtual Machine.
Maven 是一个 Java 构建自动化工具和软件构建编排器。它作为一个项目生命周期管理器和依赖管理系统,使用标准化的项目对象模型(POM)来编译、测试和打包 Java 项目。 该项目以基于阶段的构建生命周期和基于插件的扩展模型为特色,允许用户将自定义目标绑定到特定的构建阶段。它通过多模块项目编排来协调复杂的软件,并通过中和环境变量和控制工具链版本来确保可重复的构建工作流。 其功能涵盖全面的依赖管理,包括传递依赖解析和向远程仓库发布构件。该系统还通过模板提供项目生成,并为生成 API 参考和项目站点提供详细的文档生成功能。 该工具包含一个带有输入补全功能的命令行界面,并支持使用本地构件缓存进行离线构建执行。
Transforms Java source code into executable bytecode using standard directory conventions.
Pyarmor 是一个通过源代码混淆、字节码保护和二进制编译来保护 Python 软件的工具集。它作为一个代码混淆器、字节码保护器和二进制编译器,旨在防止对 Python 脚本和包的逆向工程和未经授权的访问。 该项目通过提供一个支持硬件绑定许可的综合软件许可证管理器而脱颖而出。这允许开发者将脚本执行锁定到特定的物理设备或虚拟机,并通过加密的运行时密钥强制执行严格的过期日期。 其更广泛的功能涵盖通过生成混淆的 Wheel 和多平台独立可执行文件进行安全分发。安全层面包括运行时完整性检查,例如防止调试器附加、内存级保护以及将 Python 函数转换为编译后的 C 扩展。 该工具包含一个命令行界面,并支持集成到持续集成(CI)流水线中,以在构建过程中自动化混淆过程。
Transforms Python bytecode into a complex format to prevent static analysis and reverse engineering.