A universal multi-language runner and smart REPL that executes code in 25+ languages with a single CLI.
Run is a universal multi-language runner and smart REPL written in Rust. It allows developers to execute code snippets, files, and scripts across 25+ programming languages using a single command-line interface, eliminating the need to install and manage separate compilers or interpreters for each language. It solves the problem of inconsistent workflows and setup complexity when working with multiple programming environments.
Beginners learning programming, students experimenting with code, polyglot developers prototyping across languages, DevOps engineers writing automation scripts, and educators teaching programming concepts with a consistent interface.
Developers choose Run for its unified CLI that reduces cognitive overhead, its fast performance built in Rust, and its ability to seamlessly switch between languages without context switching. The interactive REPL with variable persistence and the experimental WASI component runtime for cross-language composition are key differentiators.
Universal multi-language runner and smart REPL written in Rust.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Run executes code across 25+ programming languages, from Python to Rust, using a single unified CLI, eliminating the need to remember different commands for each language as shown in the supported languages table.
The REPL features variable persistence and seamless language switching, allowing developers to maintain state across sessions, demonstrated in examples where variables like 'x' in Go carry over when switching to Python.
It supports multiple command formats, including file execution, inline snippets, and auto-detection, making it versatile for quick testing, as illustrated in the command variations section with shorthand flags.
Run can pipe data into scripts for processing in any supported language, useful for tasks like JSON manipulation in Node.js or text transformation in Python, with clear examples provided in the README.
Built in Rust, Run benefits from zero-cost abstractions and efficient memory management, ensuring fast startup and reliable execution, as emphasized in the 'Why Rust?' section for cross-platform consistency.
Run shells out to existing compilers and interpreters, so users must install and configure toolchains separately, which contradicts its goal of reducing setup complexity for beginners.
Run 2.0 with WASI component support is labeled as experimental, meaning it's unstable for production use and may have breaking changes, as noted in the documentation for edge deployment.
Auto-detection can fail for ambiguous syntax, requiring explicit --lang flags, which adds overhead and potential for errors in scripting, as warned in the 'When to Use --lang' section.
It lacks built-in support for package ecosystems or dependency resolution, making it unsuitable for projects that require managing libraries beyond simple code execution, a common need in modern development.