Alan Lawrence
Alan Lawrence
i.e. that allow you to manually iterate through a list, rather than using `for`. While `iter` probably just needs a custom checker/compiler that calls `__iter__()`, `next` needs to be a...
Generally one should not do exact floating-point comparisons anywhere, so maybe we should approx the default thing to do. If you really wanted an exact check you could pass `abs=0.0,...
At the moment they need an explicit `@guppy()` on each, but we can figure this out just from that they are in an `@guppy.struct`, I think
https://github.com/CQCL/guppylang/blob/634e241511c7b5a90bea279b0c847230b2cf9a98/guppylang/checker/stmt_checker.py#L222 uses `rhs_elts[0]`, when the indices that correspond to the `starred` section are `rhs_elts[le:rs]`. Not sure whether we should pass the whole range or one element; in *many* cases all...
Here are a couple of example programs that fail type-checking at the moment: ``` @guppy def foo(q: qubit) -> None: measure(q) q = qubit() @guppy def bar(q1: qubit, q2: qubit,...
Turn the hugr crate's `extension-inference` feature on, see what breaks and how painful it is to fix. If it's too bad (specifically, having to declare extensions for every FuncDefn/FuncDecl), we...
....instead require them all at the top level. This is intended as a preliminary to linking. Thus: * no flattening (and less name-mangling) in monomorphization * less validation (reverting #1061...
closes #2262 The test seems fragile - i.e. somewhat lucky to have reproduced the bug in the first place - but I tried `canonicalize_nodes` on "hugr-1.hugr" and "hugr-3.hugr" (i.e. the...
The bigger issue here is #2254, which this PR *does not solve*; it is a workaround. However, it at least avoids unsoundness, by running the analysis on *all* nodes in...