Elide 1.0.0-beta2 Help

Python

Elide can run Python applications under the Python 3 language standard; Elide behaves nearly identically to CPython.

elide ./script.py
def hello(): print("Elide can run Python!")

Language Engine

Elide can execute Python using GraalPython from Oracle.

Language

Python

Standard

3.11.x

Maturity

Alpha

Engine

GraalPython

Tools

uv (see Python Tooling)

Python Interop

Developers can expose Python symbols (functions, classes, and values) to the polyglot context using the elide built-in module:

from elide import bind, poly @bind def say_hello(name = "Python"): """Render a hello greeting to the specified name.""" return f"Hello, {name}!" # use `poly` if you want to rename the symbol # (it's shorthand for 'polyglot') @poly(name = "goodbye") def say_goodbye(name = "Python"): """Render a goodbye greeting to the specified name.""" return f"Goodbye, {name}!" # you can return other functions and complex types! @bind def message(leaving = False): """Return a message renderer based on the user's disposition.""" if leaving: return say_goodbye return say_hello

Now, from TypeScript, for example:

import { message } from "./my-python.py" console.log(JSON.stringify({hello: message()()})) console.log(JSON.stringify({goodbye: message(true)()}))
elide ./my-index.ts
{"hello": "Hello, Python!"} {"goodbye": "Goodbye, Python!"}
Last modified: 15 March 2025