Skip to content

Office Hours (2026-08-11)聽#148

Closed
Closed

Description

@github-actions

馃専 Join Us for Weekly Office Hours! 馃専

Have questions about stdlib? Need help fixing a bug, figuring out what to do next, or just looking for feedback? Join our weekly office hours to connect with project maintainers, stay updated on the latest project news, and chat with other community members. This is a great opportunity to ask questions, share ideas, and engage directly with the stdlib team.

Everyone is welcome鈥攄rop in and say hello!

Time

UTC Tue 11-Aug-2026 16:30 (04:30 PM):

Timezone Date/Time
US / Pacific Tue 11-Aug-2026 09:30 (09:30 AM)
US / Mountain Tue 11-Aug-2026 10:30 (10:30 AM)
US / Central Tue 11-Aug-2026 11:30 (11:30 AM)
US / Eastern Tue 11-Aug-2026 12:30 (12:30 PM)
EU / Western Tue 11-Aug-2026 17:30 (05:30 PM)
EU / Central Tue 11-Aug-2026 18:30 (06:30 PM)
EU / Eastern Tue 11-Aug-2026 19:30 (07:30 PM)
Moscow Tue 11-Aug-2026 19:30 (07:30 PM)
Chennai Tue 11-Aug-2026 22:00 (10:00 PM)
Hangzhou Wed 12-Aug-2026 00:30 (12:30 AM)
Tokyo Wed 12-Aug-2026 01:30 (01:30 AM)
Sydney Wed 12-Aug-2026 02:30 (02:30 AM)

or in your local time:

Links

Joining the meeting

Agenda

  • Have specific things to discuss? Please comment in the issue thread below to add specific items to the agenda.

Activity

  1. added
    Office HoursIssue announcing office hours and soliciting associated agenda items.
    on Aug 4, 2026
  2. DivitJain26 commented on Aug 11, 2026

    @DivitJain26
    Member
    > var arr = new {{alias}}( [ 1, 2, 3, 4 ] )
    <Uint64Array>[ 1n, 2n, 3n, 4n ]
    > arr.copyWithin( 0, 2 )
    <Uint64Array>[ 3n, 4n, 3n, 4n ]
    > var z = arr.get( 0 )
    <Uint64>[ 3n ]
    

    But the doctest reports:

    Expected entries [1n,2n,3n,4n], but observed [3n,4n,3n,4n]

    It looks like the doctest is treating the expected output for the initial array as if it applies to the result of copyWithin(). What鈥檚 the correct way to format this repl.txt example so the doctest passes?

  3. kgryte commented on Aug 11, 2026

    @kgryte
    Member
    > var arr = new {{alias}}( [ 1, 2, 3, 4 ] );
    > arr.copyWithin( 0, 2 )
    <Uint64Array>[ 3n, 4n, 3n, 4n ]
    > var z = arr.get( 0 )
    <Uint64>[ 3n ]
    
  4. batpigandme commented on Aug 11, 2026

    @batpigandme
    Member

    AI-Generated Summary

    Caution

    These notes are likely imperfect, especially when it comes to spelling/function/package names

    Meeting Purpose

    Discussing current PRs, contributor questions, and future project direction.

    Key Takeaways

    • PRNG Reproducibility: To ensure exact reproducibility while maintaining a uniform API, the seed parameter will be overloaded. For PCG34, an array seed will encode the state seed and increment seed, with defaults used if the array is too short.
    • Promise Polyfill: The current Promise polyfill must be replaced with a spec-compliant version to ensure identical behavior to the native Promise object, including all modern static methods (e.g., Promise.allSettled).
    • Major Namespace Refactor: A large-scale refactor is planned to standardize naming conventions (e.g., math-base-special/float64) and enable support for new data types like Float16 and Int64. An RFC will precede any action.
    • AI-Assisted Development: The /goal command in Claude Code CLI can automate 90% of PR review/creation tasks, but the final 10% requires human domain expertise. This tool could be critical for the upcoming refactor.

    Topics

    Promise Polyfill Spec Compliance

    • The current Promise polyfill is not spec-compliant, which is critical for a drop-in replacement.
    • Requirement: The polyfill must replicate the native Promise object's behavior and API exactly, including all modern static methods like Promise.allSettled and Promise.withResolvers.
    • Resolution: Prashant will research existing spec-compliant polyfills to use as a reference.
    • Next Task: Prashant will also implement the WASM global module to centralize WebAssembly detection and avoid direct use of the global WebAssembly object.

    PRNG Reproducibility & Seeding

    • Problem: The PCG34 PRNG requires two seeds (state and increment) for exact reproducibility, breaking the project's single-seed API.
    • Solution: Overload the seed parameter to maintain a uniform API across all PRNGs.
      • Scalar Seed: Uses default increment.
      • Array Seed: The array encodes both seeds. For PCG34, the first two Uint64 words are the state seed, and the next two are the increment seed.
    • Data Types: PCG34 will support Uint64 for its internal state and for array seeds. This variation in seed/state types across PRNGs is acceptable.

    Namespace Refactor & AI Tooling

    • Problem: Inconsistent naming conventions (e.g., suffixes in math-base-special vs. prefixes in BLAS) and a lack of support for new data types (e.g., Float16, Int64) are creating friction.
    • Solution: A large-scale refactor is planned to standardize naming conventions across the entire project.
      • New Structure: [namespace]/[data-type]/[routine] (e.g., math-base-special/float64/cartesian-square).
      • Process: An RFC will be opened for community input before any action is taken.
    • AI Tooling for Refactor: The /goal command in Claude Code CLI can automate 90% of PR review and creation tasks.
      • Application: This tool could be used to automate the migration of existing PRs to the new namespace structure.
      • Challenge: Ensuring quality control for a fully automated migration will require careful planning.

    New Contributor Onboarding

    • A new contributor working on C implementations for missing packages in stats-base-ndarray and BLAS-base-ndarray.
    • Priority: Consistency with existing packages is paramount to enable efficient large-scale changes in the future.
    • First Task: Implement a C version of dmsk-max-abs (double-precision, masked maximum absolute value).
      • Rationale: This package is a good first test case for C implementations of masked array operations.
      • Process: Create a single PR to perfect the implementation before rolling out the pattern to other packages.
    Full transcript

    Full office hours transcript

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Office HoursIssue announcing office hours and soliciting associated agenda items.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions