Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Weird skipping of instruments in the rendering the same code #43

Open
anton-k opened this issue Mar 14, 2017 · 3 comments
Open

Weird skipping of instruments in the rendering the same code #43

anton-k opened this issue Mar 14, 2017 · 3 comments

Comments

@anton-k
Copy link
Contributor

anton-k commented Mar 14, 2017

The same code is rendered. But produced results are different. Sometimes it skips the instrument.
The strange thing is that naming of the arguments changes from run to run.

The problem is reported on GHC-7.10.3

same-run-diff-files.zip
with-haskell-source.zip

@anton-k
Copy link
Contributor Author

anton-k commented Mar 14, 2017

My guess it has something to do with Hashing algorithm. I use hashing a lot to prevent from rendering the same instrument twice. But it seems that hashing of the expression trees is done wrong or the whole idea of using cashes for this type of problems is unreliable.

@Ebmtranceboy
Copy link

Ebmtranceboy commented Mar 14, 2017

Here is a little smaller set
bug14-03-2017-17.41.zip

I tried to remove as much as possible but the bug seems to disappear as soon as I remove even a single note. With this version I normally have an output similar to tmp_ref.csd, but an output similar to tmp_weird.csd can occur from time to time (~ 1 of 6). This is the worst : an instrument is not rendered. More often, I get wrong panning or wrong amplitude (~1 of 4) : tmp_wrongpan.csd.

@Ebmtranceboy
Copy link

Smallest example with wrong panning (no instrument loss here)

bug14-03-2017-20.57.zip

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants