billpage

Bill Page

38 Reputation

4 Badges

19 years, 236 days
private contractor
Technical professional in industry or government
Athens, Ontario, Canada

MaplePrimes Activity


These are replies submitted by billpage

@Carl Love Well, this does work for simple functions

FromInert(subs([ToInert(cos) = ToInert(cos~), ToInert(sin) = ToInert(sin~)], ToInert(z->cos(z)*sin(z))))

but at first glance to perform this surgery for operations like +, *, and ^ seems awkward in the extreme! 

@Carl Love The concept of your Vectorize operator looks interesting but it still seems to be slower than writing out the vectorized operations explicitly. 

restart;
x := Vector(1..10^7, i->i, datatype=float[8]):
D(x->sin(x^2))

x -> 2 x cos(x^2)

f1 := x -> 2*x*~cos~(x^~2)
F1 := CodeTools:-Usage( f1(x) );

memory used=305.19MiB, alloc change=305.19MiB, cpu time=1.82s, real time=1.75s, gc time=148.00ms

Vectorize:= P-> proc(X) try map[evalhf](P,X) catch: P~(X) end try end proc:
f2 := Vectorize( D(x->sin(x^2) ):
F2 := CodeTools:-Usage( f2(x) );

memory used=0.60GiB, alloc change=-152.59MiB, cpu time=3.90s, real time=3.43s, gc time=844.00ms

ArrayTools:-IsEqual(F1, F2);

true

Thank you for this bold experiment with the new MaplePrimes web site!
Tom 4 wrote:
FYI, some of the crazy ideas that we're thinking about include
  1. "Wiki" elements -- i.e. content that we develop on this site in a collaborative manner
  2. more extensive personal profile sections where you can show off your stuff
  3. an available MapleNet server so that you can serve up your application online for free
  4. user and content ratings
  5. a refereed online journal
I don't think any of these ideas are really crazy. In fact at the MathAction website we have been using your ideas 1, 2, 3, 4 and talking about how to do 5 for more than a year now. In my opinion applying the wiki concept to allow collaborative development of content is essential in all of these ideas. The way we have made Axiom and Reduce available at the MathAction site illustrates how adding free access to a MapleNet server here could greatly enhance the ability of contributors to discuss Maple in depth. A system such as this is also an excellent platform for issue tracking and support, to suppliment the more structured bug reporting that is traditionally part of beta testing. I hope you don't mind this reference to other computer algebra systems. Since this is the web, another very important way to "grow" a site is to encourage links to your site from other places on the web where people with similar ideas like to hang-out. An open and colleagial attitude is certainly one way to do this. I really like your approach so far and look forward to future enhancements of this site. Cheers, Bill Page.
Page 1 of 1