Carl Love

Carl Love

18043 Reputation

24 Badges

7 years, 277 days
Mt Laurel, New Jersey, United States
My name was formerly Carl Devore.

MaplePrimes Activity


These are questions asked by Carl Love

The help for option threadsafe (on page ?option) includes this sentence: 

  • Portions of the kernel may recognize this option and allow the procedure to be called in multiple threads simultaneously.

Huh? What exactly does that mean? Isn't it already capable of being called in multiple threads simultaneously?

I understand the significance of this option for procedures to be compiled, mentioned later in the same paragraph. But is there any benefit for a non-compiled procedure that will be used in multithreaded code? If my code has numerous one-liner arrow procedures, is there any point to cluttering up my code by turning them all into procs with option threadsafe? (Y'all know how I hate cluttered code.)

I want to set up an RSS or IFTTT so that I get a notification on my phone whenever there's something new in the Active Conversations stack. My phone uses Google Android. I'd prefer to not need to rely on email/gmail for the notification; something more endogenous to Android would be preferable. I've never used RSS or IFTTT, so detailed instructions are preferable.

Can anyone explain the reasoning that went into the programming decisions that led Maple to give these results?

restart:
is(-infinity, complex); #expected: false
                             false 
is(-infinity-I*infinity, complex); #expected: false
                              true
exp(-infinity - I) = limit(exp(x-I), x= -infinity); #expected: 0=0
                         infinity*I = 0
is(exp(x)<>0) assuming x::complex; #expected: true
                             false
is(exp(x)<>0) assuming x::real; #expected: true
                              true
coulditbe(exp(x)=0) assuming x::complex; #expected: false
                              true

 

I expect the output for the following code to be a Matrix containing 720 and a Matrix containing 21. What I get is a Matrix containing x^6 and one containing 21, which shows an unexpected difference between the parameter evaluation rule for Matrix products and that for Matrix sums. Is there a good reason for this, or is it a bug? Do any other binary operators between rtables also show this weirdness? 

proc(n::nonnegint) 
local x, q, v:= <<x>>, s:= <<0>>, p:= <<1>>; 
   for x to n do p:= p.v; s:= s+v od; 
   p, s 
end proc(6);

 

Why does the following code return a vector containing x rather than containing 1 and how can I correct it?

proc() local x, v:= <x>; x:= 1; rtable_eval(v) end proc();

My actual goal is to have a Matrix with a parameter inside a procedure and to create different instantiations of the Matrix in a loop by changing the parameter. 

1 2 3 4 5 6 7 Page 1 of 7