Skip to content

Algorithm overhaul#2

Merged
lmlg merged 3 commits intomainfrom
restructure
Sep 14, 2025
Merged

Algorithm overhaul#2
lmlg merged 3 commits intomainfrom
restructure

Conversation

@lmlg
Copy link
Copy Markdown
Owner

@lmlg lmlg commented Sep 14, 2025

This PR implements several changes to the (un)packing algorithm:

  • It no longer makes use of secondary packers. Now everything is done in a single object, which helps remove bugs related to back-references.
  • It implements (un)packing for modules and functions.
  • It encodes sizes in ULEB-128.
  • It simplifies the routines for sets and dicts, relying on the implementation for tuples.
  • Tagging is no longer optional. This used to bring little benefits in terms of space while being hard to deal with.

- It no longer makes use of secondary packers. Now everything is
  done in a single object, which helps remove bugs related to
  back-references.
- It implements (un)packing for modules and functions.
- It encodes sizes in ULEB-128.
- It simplifies the routines for sets and dicts, relying on the
  implementation for tuples.
- Tagging is no longer optional. This used to bring little benefits
  in terms of space while being hard to deal with.
@lmlg lmlg merged commit 009cd29 into main Sep 14, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant