MathGroup Archive 1995

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

Search the Archive

Programming

  • To: mathgroup at smc.vnet.net
  • Subject: [mg2819] Programming
  • From: Jack Goldberg <jackgold at umich.edu>
  • Date: Wed, 20 Dec 1995 01:16:42 -0500
  • Organization: University of Michigan - College of Literature, Science, and TheArts

Hi Group;

	Here is my problem:  Suppose  BuiltIn[expr_]  is an 
operation either native to Mma or an operation appearing in 
some complicated, lengthly package.  Suppose that  BuiltIn 
does not always work.  (An example might be Integrate which 
fails to find the anti-derivative  Integrate[1/(1+Log[x]),x].)
When BuiltIn fails I want to try  MyOperation[expr_], but ONLY 
if BuiltIn fails!  Interactively, this is trivial.  Whenever 
BuiltIn fails, I recognize the failure because Mma echos the 
Input in the Output.  (The output of Integrate[1/(1+Log[x]),x] 
is itself.)  I then apply MyOperation[expr_]. But how does one code 
this so that Mma will do MyOperation automatically? That is, I 
want a snippet of code that determines the failure of BuiltIn 
and then applies MyOperation.  (In my illustrative example, 
suppose I have written a general change of variable routine.
I want this routine to go in effect whenever Integrate returns 
unsimplified.  For the example given  u = Log[x]  converts the 
integral into one recognizable by Mma.  So my code will recognize 
the fail and call "change of variable" without my intervention.
Let me make clear that the integration example is only an illustration
of the problem, not the reason for this posting.)

Jack Goldberg
University of Michigan



  • Prev by Date: Re: Distribute
  • Next by Date: Re: Function?
  • Previous by thread: Re: Mathlink & Macintosh & CodeWarrior
  • Next by thread: Re: Programming