Skip to main content

Echo

Echo is a small interpreted scripting language. Types are declared explicitly and checked at runtime. Abort is the default failure mode; recovery is inquiry and *Or twins, not try / catch.

Docs: https://deekshith-poojary98.github.io/echo/ — includes a browser playground.

name: str = "Echo";
scores: list = [95, 85, 75];

fn greet(name: str) -> void {
    say("Hello, ${name}!");
}

greet(name);

for i: int in 0..10 by 2 {
    say("Count:", i);
}

What you get

  • Typed declarations and parameters; runtime checks on bind / assign / return
  • list and hash, string interpolation, method calls, use mut, lexical scope
  • File modules: export / import name from "module"
  • Type aliases, object types (exact { ... } too), unions (int | str), first-class functions and builtins-as-values
  • Nominal class with new { ... } fields, methods (this), type methods, unbound methods, and interface (optional implements; no inheritance)
  • Thin scripting stdlib: files, JSON, regex, UTC dates, HTTP (httpGet / httpPost, host-gated), URL helpers, Base64
  • CLI: run a file, REPL, check, test, fmt, lint, builtins

What you do not

  • No class inheritance (extends), no generics, no try / catch, no packages yet
  • Type inference is limited — you still declare types
  • See Known Limitations and failure model

Install

Python 3.10+. Prefer the command name elang — short, and shells often reserve echo. The package also registers echolang (and echo).

Package name on PyPI is echolang.

python3 -m pip install --user pipx
python3 -m pipx ensurepath
pipx install echolang
elang --version
elang builtins --count

From GitHub instead of PyPI:

pipx install git+https://github.com/deekshith-poojary98/echo.git

From a clone

pip install .
# or: pip install -e .
elang path/to/file.echo

Layout

  • src/echo/ — frontend, semantics, modules, runtime, CLI
  • docs/ — VitePress site (this is the docs source)
  • docs/language-semantics.md — language contract (v0.2 base; additive through 1.1.x)
  • docs/module-semantics.md — v0.3 module contract
  • docs/reference/builtin-inventory.md — generated prelude list (python tools/sync_builtins.py)
  • *.echo / examples/ — sample programs (including examples/url_and_base64.echo)

License / contributing

License and contribution guidelines are not filled in yet.

Release files for echolang 1.1.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for echolang 1.1.9
File Size Uploaded
echolang-1.1.9.tar.gz 98.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for echolang 1.1.9
File Interpreter ABI Platform
echolang-1.1.9-py3-none-any.whl Python 3 none any Details

Total release size: 207.1 kB

Release files / echolang-1.1.9.tar.gz

Download URL echolang-1.1.9.tar.gz
Size 98.8 kB
Tags Source
SHA-256 checksum
How to use checksums
32c7a13abb9f53058d274be829dc8a777516bd5ee19c847b36d51521e15070a9
BLAKE2b-256 checksum
How to use checksums
6a8dfde6dc9f8af4158e6d0271cbbc0e4dbf9fc118bd9a65a73c16d2164bb12a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Release files / echolang-1.1.9-py3-none-any.whl

Download URL echolang-1.1.9-py3-none-any.whl
Size 108.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
933ffd2404e7cb16372c0837e587d78d56f2d736a4af718fee8898aaf8f0b135
BLAKE2b-256 checksum
How to use checksums
b762e6dfcb2c077467bd1eec521b9aac8a6ddbe5cf45eb1c4e565eec1d8e1ff2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Release history Release notifications | RSS feed

This release

1.1.9 This release

2 release files

1.0.0

2 release files

0.8.9

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page