Message Boards Message Boards

0
|
2070 Views
|
3 Replies
|
4 Total Likes
View groups...
Share
Share this post:

Dispatch in v10

Posted 10 years ago

Hello, First post here, so maybe it's in the wrong topic. But, I've encountered a problem in Mathematica v10 that I didn't had in v9. The result of the Dispatch command seems to be altered between the 2 programs. See the 2 attached files. This is creating a mess (read errors) in my programs and packages I have created. It would be nice to good if such differences were pointed out (like the Update flag in the documentation, for example the Part function) so we (the users) can debug and update our programs. Especially when commands of the previous kernel are changed.

<"v9 example">

<"v10 example">

3 Replies

Thanks for the replies. Too bad I need to spend time update packages and programs...

Dispatch is now atomic in version 10.

You could define a function for converting a Dispatch object to rules like this:

If[$VersionNumber < 10,
 dispatchRules[d_Dispatch] := First[d],
 dispatchRules[d_Dispatch] := Normal[d]
]

Then use it in your packages.

POSTED BY: Szabolcs Horvát

In this particular case the Normal function might be useful. This is for MMA10

rules = {a -> b, b -> c, c -> a, d -> e, e -> d}

Normal[Dispatch[rules]]

This is the output:

enter image description here

A similar change has happened to many functions, for example NDSolve.

Cheers,

Marco

POSTED BY: Marco Thiel
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract