Skip to content

Pre-version 0.3beta#76

Draft
Doomsk wants to merge 52 commits into
dev/pythonfrom
dev/python_impl/pre_0.3beta
Draft

Pre-version 0.3beta#76
Doomsk wants to merge 52 commits into
dev/pythonfrom
dev/python_impl/pre_0.3beta

Conversation

@Doomsk
Copy link
Copy Markdown
Member

@Doomsk Doomsk commented Nov 27, 2025

Introducing the pre-version 0.3beta

Its goals include:

  • Add all essential and minimal structure and logic for the H-hat project to be created, compiled and executed (according to current Heather dialect, available low level quantum languages and target backends)
  • Add documentation for the website
  • Add code documentation (as README.md files across the folders)
  • Add tests for checking:
    • language features
    • overall project workflow execution
    • proper handling errors for different levels (language development internals, dialect syntax, code logic)

Doomsk and others added 30 commits May 13, 2025 23:02
* new start to match main and this branch

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix mkdocs ci

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more doc pages

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add TODOs, docs introductions, mike versioning, codes fix here and there

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more docs

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix small typo

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

---------

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
* new start to match main and this branch

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix mkdocs ci

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more doc pages

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add TODOs, docs introductions, mike versioning, codes fix here and there

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more docs

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix small typo

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add docs build from main branch

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

---------

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
* new start to match main and this branch

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix mkdocs ci

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more doc pages

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add TODOs, docs introductions, mike versioning, codes fix here and there

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more docs

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix small typo

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add docs build from main branch

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more docs descriptions, pre-commit config
improve heap memory logic and Heather dialect grammar (in progress)

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

---------

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
* new start to match main and this branch

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix mkdocs ci

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more doc pages

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add TODOs, docs introductions, mike versioning, codes fix here and there

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more docs

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix small typo

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add docs build from main branch

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more docs descriptions, pre-commit config
improve heap memory logic and Heather dialect grammar (in progress)

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add instructions docs
improve docs overall

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

---------

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
* add fresh new structure

* add memblock and tests

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more code

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* improve memory block logic and structure

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* improve test

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* include data and type container

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* include data and type container

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* new start to match main and this branch

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more documentation

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix mkdocs ci

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more doc pages

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add TODOs, docs introductions, mike versioning, codes fix here and there

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more docs

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix small typo

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add docs build from main branch

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add more docs descriptions, pre-commit config
improve heap memory logic and Heather dialect grammar (in progress)

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add instructions docs
improve docs overall

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add logo and favicon

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* restart some rust codebase

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* restart some rust codebase

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix pre-commit

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add github actions workflows for lint and tests

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix pre-commit and pytest

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix pre-commit and pytest

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix pre-commit location

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* remove netqasm for now

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix pre-commit and pytest actions

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix pre-commit action

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix pytest action

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix pytest action

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix working directory for github actions

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* add qiskit-aer dependency

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

---------

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* fix ast code
add Heather AST parsing visitor

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* small fix

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* small fix

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

---------

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
* Add QNez instruction and update LowLeveQLang for OpenQASM v2.0 support

* reformat for pre-commit

* fix mypy exit error

* Add QInstrFlag to manage instruction behavior and update QNez for argument generation

* Add skip_gen flag to conditionally generate arguments in gen_instrs method

* QNez: Update boolean handling for mask values in instruction processing

* Update argument in test for QNez instruction from '@redim' to '@Not'
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
# Conflicts:
#	python/src/hhat_lang/low_level/quantum_lang/openqasm/v2/qlang.py
#	python/tests/lowlevel/qlang/openqasm/v2/test_lowlevelqlang.py
add visitor ir
test visitor ir

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
implement IR base classes to inherit from hhat_lang.core

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
…parser and evaluator

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
add function importer
improve variables, memory stack, heap, and symbol tables
finish IR parsing visitor
improve grammar
fix create new file on project

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
improve IR logic with symbol tables and ref tables
add enum data structure
(wip) improve IR visitor

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
(wip) improve IR visitor

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
…nd functions

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
improve other codes to utilize IR graph logic
(wip) implement IR visitor with IR graph

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
add PEG grammar in python for faster parsing
fix type and function imports, ref tables
fix IR visitor

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
(wip) big cleanup, big refactor

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Doomsk and others added 18 commits August 25, 2025 16:57
big cleanup, big refactor

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
…, mul, div, pow

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
# Conflicts:
#	.github/workflows/ci.yml
#	README.md
#	docs/CNAME
#	docs/TODOs.md
#	docs/core/index.md
#	docs/dialects/creation.md
#	docs/dialects/heather/current_syntax.md
#	docs/dialects/heather/heather_syntax.md
#	docs/dialects/heather/index.md
#	docs/index.md
#	docs/python/python_guide.md
#	docs/running_hhat.md
#	docs/stylesheets/extra.css
#	docs/toolchain.md
#	mkdocs.yml
#	python/README.md
#	python/pyproject.toml
#	python/src/hhat_lang/core/code/instructions.py
#	python/src/hhat_lang/core/code/utils.py
#	python/src/hhat_lang/core/data/core.py
#	python/src/hhat_lang/core/data/utils.py
#	python/src/hhat_lang/core/data/variable.py
#	python/src/hhat_lang/core/error_handlers/errors.py
#	python/src/hhat_lang/core/execution/abstract_base.py
#	python/src/hhat_lang/core/execution/abstract_program.py
#	python/src/hhat_lang/core/lowlevel/abstract_qlang.py
#	python/src/hhat_lang/core/memory/core.py
#	python/src/hhat_lang/core/types/__init__.py
#	python/src/hhat_lang/core/types/abstract_base.py
#	python/src/hhat_lang/core/types/core.py
#	python/src/hhat_lang/core/types/resolve_sizes.py
#	python/src/hhat_lang/core/utils.py
#	python/src/hhat_lang/dialects/heather/grammar/grammar.peg
#	python/src/hhat_lang/low_level/quantum_lang/openqasm/v2/__init__.py
#	python/src/hhat_lang/low_level/quantum_lang/openqasm/v2/instructions.py
#	python/src/hhat_lang/low_level/quantum_lang/openqasm/v2/qlang.py
#	python/src/hhat_lang/low_level/target_backend/qiskit/openqasm/code_executor.py
#	python/src/hhat_lang/toolchain/project/new.py
#	python/tests/core/test_type_ds.py
#	python/tests/dialects/heather/parsing/ex_fn01.hat
#	python/tests/dialects/heather/parsing/ex_fn02.hat
#	python/tests/dialects/heather/parsing/ex_main02.hat
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
fix Heather's quantum program.py

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
fix ci workflow

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
(wip) add metafn grammar and functionality --new function constructors
(wip) add metamod grammar
fix and refactor memory, ir, ir visitor (wip), functions, types, symbol table (wip), ir builder (wip) to account for changes in the H-hat engine

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
(wip) add metafn grammar and functionality --new function constructors
(wip) add metamod grammar
fix and refactor memory, ir, ir visitor (wip), functions, types, symbol table (wip), ir builder (wip) to account for changes in the H-hat engine
(wip) config logic for executor to run using the correct data

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
(wip) cast system:
- add conversion functions for built-in types
- transforming functions
- improve cast operators

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
(wip) add project settings data handlers

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
@Doomsk Doomsk self-assigned this Nov 27, 2025
@Doomsk Doomsk added python Pull requests that update Python code implementation Implementing according to docs TODOs page roadmap labels Nov 27, 2025
(wip) add project settings data handlers
(wip) add README descriptions
(wip) add auto import of built-in types and functions
improved cli code

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
(wip) add project settings data handlers
(wip) add README descriptions
(wip) add auto import of built-in types and functions
improved cli code

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
@Doomsk Doomsk added this to the pre-version 0.3beta milestone Dec 5, 2025
refactor built-in functions structure and workflow
(wip) add quantum program logic with casting operation
(wip) add project settings data handlers
(wip) add README descriptions
(wip) add auto import of built-in types and functions
improved cli code

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
* (wip) add new data type core container structure and logic
(wip) add new variable core structure and logic

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>

* (wip) add new data type core container structure and logic
(wip) add new variable core structure and logic

Signed-off-by: Doomsk <eduardo.maschio@hhat-lang.org>

* refactor type definition structure and logic
refactor symbol, literal, composite objects definitions

Signed-off-by: Doomsk <eduardo.maschio@hhat-lang.org>

* (wip) data and types

Signed-off-by: Doomsk <eduardo.maschio@hhat-lang.org>

* fix ir parsing and ir graph generation
fix ir parsing

Signed-off-by: Doomsk <eduardo.maschio@hhat-lang.org>

---------

Signed-off-by: Doomsk <eduardo.maschio@theqube.io>
Signed-off-by: Doomsk <eduardo.maschio@hhat-lang.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

implementation Implementing according to docs TODOs page python Pull requests that update Python code roadmap

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

4 participants