Replies: 7 comments 1 reply
-
|
See also Quantinuum/tket2#748 . Having a linear "state" type passed through these calls seems like a good solution. (We would need several such types, one per type of state). |
Beta Was this translation helpful? Give feedback.
-
|
But should we expose this to the user? Having to pass the state around seems very cumbersome for things like |
Beta Was this translation helpful? Give feedback.
-
|
Agree it would be nice to avoid exposing to the user if we can. |
Beta Was this translation helpful? Give feedback.
-
|
Some thoughts on how to do this:
|
Beta Was this translation helpful? Give feedback.
-
|
MLIR has something similar with their "categorization" of side-effect types, but they use numeric "stages" to order execution inside a single basic block. Mind that we may want separate shared vs unique side-effect producers. |
Beta Was this translation helpful? Give feedback.
-
|
Interesting note from that MLIR page:
|
Beta Was this translation helpful? Give feedback.
-
|
Ok so I think the conclusion / current thinking is: #1266 Should we therefore close this discussion? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
We need to ensure the ordering of side-effectful functions like
result,panic,rng_seed,rng_next, etc.Since there are no dataflow dependencies between those functions, we have to emit extra order-edges between them within a basic block. This requires tracking of these effects by the compiler and is not trivial:
resultandrng_nextsince their side-effects don't interferBeta Was this translation helpful? Give feedback.
All reactions