<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Tue, Sep 10, 2013 at 1:47 PM, katja <span dir="ltr"><<a href="mailto:katjavetter@gmail.com" target="_blank">katjavetter@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Tue, Sep 10, 2013 at 12:09 PM, Kjetil Matheussen<br>
<<a href="mailto:k.s.matheussen@gmail.com">k.s.matheussen@gmail.com</a>> wrote:<br>
> On Tue, Sep 10, 2013 at 11:58 AM, katja <<a href="mailto:katjavetter@gmail.com">katjavetter@gmail.com</a>> wrote:<br>
>><br>
>> On Tue, Sep 10, 2013 at 11:12 AM, Kjetil Matheussen<br>
>> <<a href="mailto:k.s.matheussen@gmail.com">k.s.matheussen@gmail.com</a>> wrote:<br>
>> > Perhaps expr should check for denormals as well?<br>
>><br>
>> Math objects should be able to output denormals. Without that we could<br>
>> not even make test patches to find or debug denormals-issues in other<br>
>> classes.<br>
>><br>
><br>
> Yes, but the problem is that [expr 1/0.00000000000000000000001] sends out<br>
> inf.<br>
<br>
</div></div>I meant to say denormals and non-numbers, sorry. For example, this<br>
gives 'inf' in Pd:<br>
<br>
[2(<br>
|<br>
[pow 1024]<br>
<br>
and this gives '-nan':<br>
<br>
[2(<br>
|<br>
[pow 1024]<br>
|<br>
[* 0]<br>
<br>
Since most processors don't flush denormals and non-numbers to zero by<br>
default, Pd classes have to deal with it in some selective way. If all<br>
math objects (signal objects in particular) would flush those<br>
generally undesired numbers to zero, that would make Pd slower. The<br>
compromise is to flush problematic values wherever they cause a<br>
serious problem, like recycling NaN's. In your [vd~] example the NaN<br>
seems to result in an illegal pointer value. The same issue might<br>
happen in other table reading objects with index inlets ([tabread],<br>
[tabread4~], [cyclone/poke~]). Did you try that?<br>
<span class="HOEnZb"><font color="#888888"><br></font></span></blockquote><div><br></div><div>Thank you! That's what I wanted to know.</div><div>I'll provide a more thought-through patch for vd~, and perhaps tabread4~</div>
<div>and poke~ as well.</div><div><br></div><div>The trouble with vd~ was a real world example (provided by a user) that</div><div>made radium (with now has pd embedded) crash. He couldn't continue working</div><div>on his song, since pd patches are saved inside radium song files, and radium</div>
<div>crashed as soon as he tried to load the song.</div><div><br></div></div></div></div>