Feature request (was "parallel cell executing and wxmaxima")
Subject: Feature request (was "parallel cell executing and wxmaxima")
From: Rupert Swarbrick
Date: Sun, 10 Jun 2012 19:46:41 +0100
Richard Fateman <fateman at eecs.berkeley.edu> writes:
> Let's say that your underlying lisp system has a primitive that looks
> like lisp mapcar,
> but "in parallel". (If you wonder if this is like MapReduce, the
> answer is yes, with the
> Reduce step making a list of the answers.) Let's say the Lisp
> program is called
> mapcar-parallel.
>
> Then
> :lisp (defun $evaluate_parallel( &rest L) (cons '(mlist)
> (mapcar-parallel #'meval L)))
>
> defines evaluate_parallel.
>
> To call it from Maxima you would do something like
>
> evaluate_parallel('f(x), 'g(y), 'h(z))
>
> note the quotes: otherwise f,g,h would be evaluated BEFORE calling
> evaluate_parallel!
>
> I am sure there is a way to make the quote marks unnecessary.
Yes. defmspec, for example. But that's not the point:
> Of course (a) your lisp may not have mapcar-parallel, or anything even
> remotely like that,
> but just calls to some operating system function, or not even that...
> and (b) this solves none of the important problems involving shared state,
... which is what the message that you replied to (and included below in
its entirety) said. Thanks.
The point is that f, g and h can't (currently) be written in Maxima's
language and do anything non-trivial, because anything non-trivial in
Maxima touches serious amounts of shared state.
> and (c) it may fail to be faster for any number of reasons,
> and (d) it may fail when simply serial evaluation would be fine.
<snip>
>
> What about a voice (Siri-like) input to Maxima on iphone etc?
> {actually, I can help with this:}
:-)
Rupert
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 315 bytes
Desc: not available
URL: <http://www.math.utexas.edu/pipermail/maxima/attachments/20120610/28a2ba6a/attachment.pgp>