Implement typed iteration and Bubble artifacts - #18
Merged
Conversation
Add the accepted nominal iteration, growable List, and portable Sequence contracts across typing, HIR, MIR, the interpreter, LLVM, and the native runtime. Complete constrained generic inference and source-free cross-Bubble specialization without dynamic fallback. Add deterministic Package and Workspace discovery, canonical lock files, checked documentation output, and verified reference and .poplib encodings. Keep ROADMAP.md synchronized with slices that now have passing conformance coverage.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Implement major Pop Lang 0.1.0 roadmap slices:
Iterable<T>,Iterator<T>, andIteration<T>protocols;List<T>runtime surface;Sequence.mapandSequence.filter, eagerSequence.fold, and materializingSequence.collectin Pop source;classes, interfaces, fields, and methods;
and documentation;
bubble.lockgeneration;.poplibemission/loading;documentation.xml;ROADMAP.mdwith the verified completed slices.Architecture traceability
.poplibencoding;List<T>and portableSequenceoperations;bubble.lock,reference.metadata, and.poplibformats;pop check,pop build,pop run, andpop documentation.top-level
ROADMAP.md.Verification
cargo fmt --all -- --checkcargo check --workspace --all-targetscargo test --workspace --all-targetscargo clippy --workspace --all-targets -- -D warningsIf a check was not run, explain why:
The Clippy command was run but remains failing in the expanded type-checking
implementation. It reports 59 warnings promoted to errors, primarily oversized
functions, wildcard imports, documentation omissions, and mechanical style
findings. These need focused refactoring rather than blanket suppression.
The
.poplibdirectory integration test was added during the final compile-fixpass rather than before its initial implementation, so the test-order checkbox
is intentionally left unchecked.
A Ruby-based check also confirmed that relative links under
architecture/resolve.
Review notes
universal-table behavior was introduced.
are included.
Known limitations and follow-up work:
casts, effects, and generated typed metadata adapters remain unfinished.
Pop.StandardAPI inventory and stabilization work remain open..poplibfiles can be emitted and verified, but Package linking does not yetconsume the on-disk artifacts.
and reproducible dependency caching remain unfinished.
pop test,pop format,pop lint, andpop fixdo not yet provide thecomplete Package/Workspace workflows.