Roc Zulip Daily Summary — 2026-02-24

  • Realm: https://roc.zulipchat.com
  • Window: 2026-02-24 12:00 AM to 2026-02-25 12:00 AM (America/Los_Angeles)
  • Messages: 19
  • LLM: vertex_open_model model=zai-org/glm-5-maas topics=4 ok=4/4

Top threads

Crash in recursive code

Key links

Summary

Anton reported a segmentation fault (exit code 139) when running recursive directory-walking code in Roc using the nightly compiler. The crash was traced to a bug in the Roc interpreter itself, which Anton subsequently fixed in PR #9200.

Key points

  • The crash occurred during recursive walk_directory! function execution, specifically when using fold for list concatenation
  • A workaround was found by replacing fold with explicit for loops
  • Both Claude AI and human participants identified the bug as being in Roc itself, not in the basic-cli platform
  • The bug was specific to the Roc interpreter

Open questions

  • None

Action items

  • None (the bug has already been fixed in PR #9200)

Could Roc be the language that I’m looking for?

Summary

A user with a background in Go and frustrations with Scala and Rust inquired if Roc would suit their preference for a simple, compiled language with strong type guarantees. Community members responded positively, suggesting Roc is a good fit while noting that its unique application/platform split offers high ergonomics, though it may not be ideal for software requiring low-level control like OS development.

Key points

  • The original poster likes Go’s simplicity and compilation but finds its lack of guarantees (e.g., nil) unacceptable.
  • They found Scala too abstract and “magical,” and felt Rust, while ideal in theory, often becomes too complex in practice.
  • Responders agreed Roc seems to fit the user’s needs, offering a better type system without the complexity of Scala.
  • Roc’s architecture separates applications from platforms, allowing high-level abstraction and performance where platforms are mature.
  • Roc may not be suitable for domains requiring precise control over memory layout or CPU instructions, such as low-level firmware or OS development.

Open questions

  • None explicitly stated.

Action items

  • None explicitly stated.

parse error with -> and lambda

Summary

This thread is extremely brief and contains no technical discussion regarding a parse error. It consists only of a user expressing thanks and referencing a pull request that adds a demo to an example file.

Key points

  • Anton thanked Luke for a previous interaction.
  • A “complex pipeline demo” was added to the “all syntax example” in pull request #9199.

Open questions

  • None identified from the provided transcript.

Action items

  • None identified from the provided transcript.

stop one function from being exposed

Summary

Based on the provided transcript, which consists of a single message, here is the summary: Anton notes that leaving specific kinds of private functions “unimplemented” is a useful pattern when the platform provides the implementation, serving as an easier alternative to splitting or duplicating files.

Key points

  • The discussed pattern involves leaving private functions unimplemented because the platform supplies the implementation.
  • This approach is considered much easier than previous methods, such as splitting or duplicating files like Cmd.roc and InternalCmd.roc.

Open questions

  • None.

Action items

  • None.