Unsandbox CLI implementations in 42 programming languages for the permacomputer project. Public domain software for code execution across all ecosystems. Languages: Python, JavaScript, Ruby, Go, Rust, C, C++, Java, Kotlin, C#, F#, Haskell, OCaml, Clojure, Scheme, Common Lisp, Erlang, Elixir, D, Nim, Zig, V, Dart, Groovy, Scala, Julia, R, Crystal, Fortran, COBOL, Prolog, Forth, Tcl, Raku, Lua, PHP, Perl, Bash, TypeScript, Objective-C, PowerShell, AWK Includes test suites and service lifecycle tests.
3.6 KiB
3.6 KiB
UN CLI Inception
The UN CLI written in every language it can execute. 42 implementations, one unified interface.
"If you replace every line of un.c with a different programming language, but it still executes code on unsandbox... is it still un?"
Quick Start
# Clone all 42 implementations
git clone https://github.com/russellballestrini/un-inception.git
cd un-inception
# Set your API key
export UNSANDBOX_API_KEY=your_key_here
# Run any implementation
python3 un.py test/fib.py
node un.js test/fib.py
ruby un.rb test/fib.py
go run un.go test/fib.py
# They all produce the same output:
# fib(10) = 55
Implementations
| Language | File | Category |
|---|---|---|
| Python | un.py |
Scripting |
| JavaScript | un.js |
Scripting |
| TypeScript | un.ts |
Scripting |
| Ruby | un.rb |
Scripting |
| PHP | un.php |
Scripting |
| Perl | un.pl |
Scripting |
| Lua | un.lua |
Scripting |
| Bash | un.sh |
Scripting |
| Go | un.go |
Systems |
| Rust | un.rs |
Systems |
| C | un_inception.c |
Systems |
| C++ | un.cpp |
Systems |
| D | un.d |
Systems |
| Nim | un.nim |
Systems |
| Zig | un.zig |
Systems |
| V | un.v |
Systems |
| Java | Un.java |
JVM/.NET |
| Kotlin | un.kt |
JVM/.NET |
| C# | Un.cs |
JVM/.NET |
| F# | un.fs |
JVM/.NET |
| Groovy | un.groovy |
JVM/.NET |
| Dart | un.dart |
JVM/.NET |
| Haskell | un.hs |
Functional |
| OCaml | un.ml |
Functional |
| Clojure | un.clj |
Functional |
| Scheme | un.scm |
Functional |
| Common Lisp | un.lisp |
Functional |
| Erlang | un.erl |
Functional |
| Elixir | un.ex |
Functional |
| Julia | un.jl |
Scientific |
| R | un.r |
Scientific |
| Crystal | un.cr |
Scientific |
| Fortran | un.f90 |
Scientific |
| COBOL | un.cob |
Scientific |
| Prolog | un.pro |
Scientific |
| Forth | un.forth |
Scientific |
| Tcl | un.tcl |
Other |
| Raku | un.raku |
Other |
| Objective-C | un.m |
Other |
| Deno | un_deno.ts |
Other |
| PowerShell | un.ps1 |
Other |
| AWK | un.awk |
Other |
Features
Each implementation supports:
- Execute code files via the unsandbox API
- Auto-detect language from file extensions
- Environment variables (
-e KEY=VALUE) - Input files (
-f file.txt) - Artifact collection (
-a -o ./output) - Interactive sessions (
sessionsubcommand) - Persistent services (
servicesubcommand) - Network modes (
-n zerotrustor-n semitrusted)
Usage
# Execute a script
./un.py script.py
# With environment variables
./un.py -e DEBUG=1 -e NAME=World script.py
# With input files
./un.py -f data.csv -f config.json process.py
# Collect artifacts
./un.py -a -o ./output main.c
# Interactive session
./un.py session --shell python3
# Persistent service
./un.py service --name myapp --ports 8080 --bootstrap "python3 -m http.server 8080"
Testing
# Run a quick test with any implementation
./un.py test/fib.py
# Output: fib(10) = 55
# Run the full test matrix (requires API key)
./tests/run_matrix.sh
Run with un2 (Meta-inception)
You can use the main un CLI to run these implementations inside unsandbox:
# Python implementation running inside unsandbox
un2 -n semitrusted un.py test/fib.py
# Rust implementation running inside unsandbox
un2 -n semitrusted un.rs test/fib.py
# It's turtles all the way down
License
MIT License - See individual files for details.
Links
- unsandbox.com - Remote code execution API
- CLI Inception Gallery - Browse all implementations
- API Documentation - Full API reference