Skip to main content

Hiesenoether

A deterministic programming language where reading a variable can change what it returns next.

PyPI: https://pypi.org/project/hiesenoether/

Install

Hiesenoether requires Python 3.10 or newer.

pip install hiesenoether

Run

Create a file called program.hn:

energy[100]

x <- 10

print x
print x
print x

Run it:

hiesenoether program.hn

Output:

10.0
11.1
12.4

x is assigned once. Each read advances its internal state, so the next read returns a different value.

The language is still deterministic. Running the same program with the same sequence of operations produces the same result.

Start the REPL with:

hiesenoether --repl

How it works

Variables are unstable by default:

x <- 10

Stable variables keep the same value:

stable answer <- 42

An unstable variable can be frozen later:

stabilize x

inspect shows the internal state of a variable and affects what it returns later:

inspect x

Programs also have an energy budget:

energy[100]

Inspection, stable variables, functions, and invariants spend energy. Capabilities can be removed permanently in exchange for energy:

remove[inspection]
remove[invariants]
remove[stable_control]

Features

  • Unstable and stable variables
  • Arithmetic and comparisons
  • inspect and stabilize
  • Standard, pure, and unstable functions
  • if statements
  • while loops
  • Invariants
  • Energy queries
  • Capability removal
  • .hn files
  • Interactive REPL
  • Static analysis and validation tools

Run from source

git clone https://github.com/da-taki/Hiesenoether.git
cd Hiesenoether
python -m src.main examples/basic_energy.hn

Run the REPL from source:

python -m src.main --repl

Research

The repository includes experiments on inspection count, nonlinear computation, access order, and program length.

The main experiment battery has 22 configurations with 100,000 executions per configuration.

Results and reproduction instructions are available in:

The repository also includes exact-semantics checks, runtime-correspondence tests, theorem validators, and static-analysis experiments.

Tests

Run the interpreter tests:

python run_tests.py

Run the pytest suite:

python -m pytest tests -q

AI use declaration

AI was used for making some experiments for the project.

Limitations

Hiesenoether is an experimental language.

if statements and while loops work. else, for, and range are not implemented yet.

Numbers use floating-point values. Error messages are basic. There is no module system or standard library.

License

Hiesenoether is licensed under the MIT License.

Release files for hiesenoether 0.1.1

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

Source distribution (sdist)

Source distribution for hiesenoether 0.1.1
File Size Uploaded
hiesenoether-0.1.1.tar.gz 11.9 kB Details

Built distribution (wheel)

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

Total release size: 26.0 kB

Release files / hiesenoether-0.1.1.tar.gz

Download URL hiesenoether-0.1.1.tar.gz
Size 11.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f6cd28bc8bfbfcbdddef6d22ea025c479f70b9f36550fdf54440c0bf0255d8d4
BLAKE2b-256 checksum
How to use checksums
5d57ac2557b3c480a18daedf9a12e8d62c0ebd9977d30bd8c561f6314e66a4cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 26, 2026.

Transparency log

Release files / hiesenoether-0.1.1-py3-none-any.whl

Download URL hiesenoether-0.1.1-py3-none-any.whl
Size 14.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e26466813456cfa8b5ac143386dc09554cdda7fdceae249e6c25e669cf8aa786
BLAKE2b-256 checksum
How to use checksums
0b687b6ccc9902c9fff5f662c1643f41e4b253fbb186aecfb4ad58c428dc3e3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 26, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

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