cucapra / cucapra/protocols

[Lang] Add Boolean operators like `&&`, `||`

Open
#206 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Rust
Stars
15
Forks
0
Avg merge
6h 20m
Merged PRs (30d)
15

Description

(Summarizing what was discussed in today's meeting, 3/2)

The example in #205 indicates that having Boolean operators is useful to model a larger variety of latency-insensitive interfaces (e.g. [Jang et al's Hazard Interfaces](https://dl.acm.org/doi/10.1145/3656378)).

Remarks:
- This is a relatively straightforward addition to the language, since the well-formedness conditions on guards for `if` / `while` ensure that the monitor always has all the information it needs to evaluate the guard in the current clock cycle
- We'll want to disallow `&&` and `||` from appearing on the RHS of assignments / in `assert_eq`

**NB**: this is a nice-to-have extension, but is not essential for the paper submission, so we should de-prioritize for now

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.