rye  by refaktor

Dynamic language for flexible expression, strict state management

created 5 years ago
580 stars

Top 56.6% on sourcepulse

GitHubView on GitHub
Project Summary

Rye is a high-level, dynamic, function-oriented programming language designed for scripting and embedding within Go applications. It aims for flexibility in expression while enforcing strict state management, offering a homoiconic, expression-based syntax where everything is a function call.

How It Works

Rye is interpreted by a Go-based runtime, enabling seamless integration with Go programs. Its core design emphasizes homoiconicity (code as data), first-class functions, and multiple dialects for specialized tasks. A key feature is its safety focus, with explicit state changes and separation of pure/impure functions, making it suitable for complex scripting and configuration.

Quick Start & Requirements

  • Install: Download pre-built binaries from Releases or build from source.
  • Prerequisites: Go 1.21.5+ for building from source. Cgo-compatible build tools (e.g., build-essential on Debian/Ubuntu) are needed for modules like SQLite.
  • Resources: Official documentation and examples are available at ryelang.org.

Highlighted Details

  • Homoiconic and expression-based syntax.
  • Go-based interpreter for easy embedding.
  • Multiple dialects for specialized tasks.
  • Safety features: explicit state, pure/impure function separation.

Maintenance & Community

  • Project is in Alpha status, with core design stable.
  • Community engagement via GitHub Discussions and Reddit. Contact available via email and Twitter (@refaktor).

Licensing & Compatibility

  • License: Not explicitly stated in the README. Compatibility for commercial use or closed-source linking is therefore unclear.

Limitations & Caveats

  • The project is in Alpha, indicating potential instability and ongoing changes.
  • License information is missing, which may impact commercial adoption.
  • Editor support (Emacs) is listed as "soon," suggesting current limitations.
Health Check
Last commit

3 days ago

Responsiveness

1 day

Pull Requests (30d)
28
Issues (30d)
3
Star History
29 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.