Roc Zulip Daily Summary — 2026-03-03

  • Realm: https://roc.zulipchat.com
  • Window: 2026-03-03 12:00 AM to 2026-03-04 12:00 AM (America/Los_Angeles)
  • Messages: 14
  • LLM: vertex_open_model model=zai-org/glm-5-maas topics=6 ok=6/6

Top threads


compile time evaluation

Summary

Luke Boswell explained that compile-time evaluation can be achieved by JIT compiling code using various backends (such as LLVM or a dev backend) and storing the result, rather than relying solely on the existing interpreter.

Key points

  • Users can choose which backend to use for compile-time evaluation, including the interpreter, a dev backend, or LLVM.
  • The mechanism works by JIT compiling the code, evaluating it, and storing the result at compile time.
  • There is no final decision yet on deprecating the interpreter; the plan is to compare performance data to inform the decision.
  • Luke noted that the current interpreter is complex and bug-prone because it re-implements type-checking and polymorphism at runtime.

Open questions

  • None.

Action items

Key links


Worklog (Draft PRs and coordination)

Summary

Luke Boswell announced a significant PR that upgrades the roc glue tool and includes a WASM build of the compiler for the echo platform, inviting others to upgrade the playground. Anton volunteered to handle the playground upgrade.

Key points

  • PR #9226 renames “glue” to roc glue and adds Zig and Rust glue scripts.
  • The PR introduces a WASM build of the compiler for the “echo” platform.
  • The WASM build allows for easier setup of web-based examples, such as updating the playground to use the echo platform or drawing SVGs.

Open questions

  • None.

Action items

Key links


math functions in new compiler

Summary

Guillaume Sarisson plans to implement complex math functions like cos, sin, and exp in pure Roc for practice, noting their absence in the new compiler’s built-ins, which prompted Anton to create an issue to ensure they are added.

Key points

  • Math functions such as cos, sin, and exp are currently missing from the new compiler’s built-in file.
  • Guillaume intends to implement these functions in pure Roc for fun.
  • Anton opened issue #9231 to track the addition of these functions.

Open questions

  • None.

Action items


Unexpected type mismatch with parameterised function

Summary

Jonathan encountered a type mismatch error when calling a parameterized insert method on an RBTree, despite the concrete types appearing to match the function’s generic signature and constraints.

Key points

  • The function insert is defined with generic types k and v and constraints (is_eq, is_lt, is_gt).
  • The empty function is defined with the same generic types and constraints.
  • The error message indicates the method expects the generic RBTree(k, v) but found the concrete RBTree(I32, Str).
  • Jonathan expects the concrete types I32 and Str to successfully instantiate the generic parameters.

Open questions

  • Why does the compiler reject the concrete types I32 and Str as valid instantiations of the generic types k and v?
  • Is there a syntax or definition issue regarding how the constraints or type parameters are declared on empty versus insert?

Action items


Pull Request for Review

Summary

Anton submitted pull request #9232 for review, which aims to fix a panic caused by a “Record field not found in layout” error.

Key points

  • The pull request addresses a specific panic scenario.
  • The error message involved is “Record field not found in layout”.

Open questions

  • None identified from the provided text.

Action items


Roc Online Meetup Mar 2026

Summary

Luke Boswell initiated a poll to schedule the next Roc Online Meetup for March 2026.

Key points

  • The goal is to find a date and time that suits the most people.
  • A When2Meet link was provided for participants to indicate their availability.

Open questions

  • What is the final date and time for the meetup?

Action items

Key links