Closed VictorCMiraldo closed 2 years ago
@0xd34df00d, a quick google gave me this: https://stackoverflow.com/questions/23471594/concurrent-stack-implementation-using-mvar/23499300#23499300
@0xd34df00d, a quick google gave me this: https://stackoverflow.com/questions/23471594/concurrent-stack-implementation-using-mvar/23499300#23499300
Oh welp, noticed this just now, sorry! Anyway, using QSem
seems cleaner than what's in that answer.
Did GitHub get confused by the two PRs?
Either GitHub, Git or I got confused by the two PRs; I rebased this branch not inclusing the two initial commits on the latest dev
(after merging #109) but now the web interface shows more commits than it should
I think it's good now. I know that if you force-push GitHub leaves anything above it unchanged, but the Files tab work as it should.
For the record; it's remarkable that Pirouette is significantly simpler and faster! This is CI's time for the isUnity
test:
isUnity Bug
[correct_isUnity v] validate [\r _ -> r] counter: OK (2.71s)
A few PRs ago we were close to 10s! :tada:
Using a
pure
solve function and parallel symbolic evaluation seems promising; our state monad is hurting us a little, I might work on removing that state monad if not extremely necessary.Also, another curious fact is that keeping the lock in
pushMStack
andpopMStack
causes a deadlock, but removing it makes everything go through. I'm a bit puzzled by it.