Metadata-Version: 2.1
Name: dynos-ddl
Version: 0.1.3.post1
Summary: The DYNOS Domain Language: parser, evaluator, and REPL for DYNOS
License: Apache-2.0
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: dynos-core>=0.1.3
Requires-Dist: lark
Provides-Extra: repl
Requires-Dist: prompt_toolkit; extra == "repl"
Requires-Dist: requests; extra == "repl"
Requires-Dist: rich; extra == "repl"
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"

# dynos-ddl

The DYNOS Domain Language (DDL): an operator surface for the DYNOS
architecture. Parser, evaluator, type-checker, source renderer, and
(via the `[repl]` extra) an interactive REPL plus protocol client.

## Install

Minimal install (parser, evaluator, render - no REPL, no networking):

```
pip install dynos-ddl
```

With the operator console + protocol-mode REPL:

```
pip install dynos-ddl[repl]
```

The `[repl]` extra pulls in `prompt_toolkit`, `requests`, and `rich`.

## Public surface

```python
from dynos_ddl import parse, evaluate, Environment, Result, MockEvalBackend
from dynos_ddl.errors import DDLError
from dynos_ddl.ast import Program  # AST node types
```

## CLI

When installed alongside `dynos-client`, this package contributes the
`dynos repl` and `dynos ddl` subcommands via the `dynos.cli` entry-point
group. With `--connect <url>` the REPL talks to a remote `dynos host`;
without `--connect` it uses the in-process orchestrator (which requires
the `dynos` backend package to be installed).
