Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2014

[Date Index] [Thread Index] [Author Index]

Search the Archive

OnError [Thread"::"tdlen"]

  • To: mathgroup at smc.vnet.net
  • Subject: [mg132561] OnError [Thread"::"tdlen"]
  • From: "EMartin" <eMartinSerrano at telefonica.net>
  • Date: Fri, 11 Apr 2014 02:12:09 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-outx@smc.vnet.net
  • Delivered-to: mathgroup-newsendx@smc.vnet.net

Hi,

Many classic  programming languages provide a command to interrupt
computations when some exception arises, allowing to perform any action on
the exception as in something as, for example:

OnError [] do (action)] [routine]  (*This could be the general pattern*)

OnError [] do (Print[Stack]; Abort[] ) [routine] (*This could be a more
specific pattern*)

OnError [Thread"::"tdlen"] do JumpToCheck ][routine] 

(*The above could be a more specific but even more general pattern. The jump
made to an exception handling routine to evaluate or treat the exception*)



These catching commands should be located  at the beginning of the whole
code as in *TimeConstrained[routine, time]* which aborts the  routine if it
takes more than time seconds.



Mathematica has got enough stuff to deal with erroneous situation (Abort,
Interrupt, Catch, Throw,=85) provided one is able to catch the exception (and
its type) as soon as it arises , but I never was able to do it.



Since Mathematica prints the errors messages, the type of the exception and
the exact point where it arises is available (but hidden) to let the user to
take control. Probably the tool is already available but I can find it.



Any help will be welcome



E. Martin-Serrano

__________________________________________

This e-mail and the documents attached are confidential and intended solely
for the addressee; it may also be privileged. If you receive this e-mail in
error, please notify the sender immediately and destroy it. As its integrity
cannot be secured on the Internet, no sender92s liability can be = triggered
for the message content. Although the sender endeavors to maintain a
computer virus-free network,  he/she does not warrant that this transmission
is virus-free and  will not be liable for any damages resulting from any
virus transmitted.

Este mensaje y los ficheros adjuntos pueden contener informaciF3nconfidencial destinada solamente a la(s) persona(s) mencionadas
anteriormente y su contenido puede estar protegido por secreto profesional y
en cualquier caso el mensaje en su totalidad est=E1  amparado y protegido por
la legislaci=F3n vigente que preserva el secreto de las comunicaciones, y por
la legislaci=F3n de protecci=F3n de datos de car=E1cter personal. Si usted recibe
este correo electr=F3nico por error, gracias por informar  inmediatamente al
remitente y destruir el mensaje. Al no estar asegurada la integridad de este
mensaje sobre la red, el remitente no se hace responsable por su contenido.
Su contenido no constituye ning=FAn  compromiso para el remitente, salvo
ratificaci=F3n escrita por ambas partes.  Aunque se esfuerza al m=E1ximo por
mantener su red libre de virus, el emisor  no puede garantizar nada al
respecto y no ser=E1 responsable de cualesquiera da=F1os que puedan resultar de
una transmisi=F3n de virus.




  • Prev by Date: weird numbers
  • Next by Date: List vs. array in Mathematica
  • Previous by thread: weird numbers
  • Next by thread: Re: OnError [Thread"::"tdlen"]