[Date Index] [Thread Index] [Author Index]
Re: Sending an interrupt to the frontend?
On 19/07/2012 08:51, Michael Weyrauch wrote: > Ralph, > > I really would like to understand your critical remarks somewhat > better. > > It is clear that one can easily and quickly run the frontend irresponsive. > However, in most cases I know, this is actually due to bad programming > (from Mathematica's point of view) rather than an instable product. > > One typical reason is that a command returns symbolic results where the > programmer actually expected only numerical stuff, and quickly things get completely out of hand. But how should Mathematica know that all this was not intended? > > It is the tremendous flexibility and the many possibilities which > sometims get into the way, and as a consequence the frontend can not > handle the output from the kernel any more. > > I really do not understand where you expect Wolfram to get "its act > together". My experience tells me: A good Mathematica program may run > for days without any instability. But my stupitidy and/or lasy > programming can run it against > the wall within seconds. Mathematica as such is definitely not unstable. > (of course, sometimes there are bugs as with any other major (and minor) > software). > > Michael > I am not sure it is always as simple as just blaming the user! I have seen Mathematica hang when all I have done is start it up and look something up in the help system (or try to). My feeling is that Mathematica could learn something from the Windows GUI. When most events happen in Windows (e.g. someone pushes a button), the information doesn't get posted into the program pre-emptively, as I think happens with Mathematica - it gets added to a list of messages, which is read in a message loop. This means that everything happens in a predictable way, without race hazards. I strongly suspect that this is why Mathematica has a slightly glitchy feel. I really don't understand why WRI feel this problem is insoluble (assuming they do - it has been like that since version 6.0). That leaves complicated situations involving Dynamic. This may indeed create tricky problems, but if so, why didn't WRI use a more robust scheme? David Bailey http://www.dbaileyconsultancy.co.uk