Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

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

Search the Archive

Why FullDefinition does not work in MathLink mode?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg120548] Why FullDefinition does not work in MathLink mode?
  • From: Alexey Popkov <lehin.p at gmail.com>
  • Date: Thu, 28 Jul 2011 07:55:27 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com

Hello,

When working with MathKernel in interactive session without of the
FrontEnd, FullDefinition works as expected:

In[1]:= a=2;FullDefinition[a]

Out[1]= a = 2

But when trying to use it in MathLink mode one get ReturnPacket with
unevaluated FullDefinition:

In[1]:= kernel=LinkLaunch[First[$CommandLine] <> " -mathlink"];
LinkRead[kernel];
LinkWrite[kernel,Unevaluated[a=2;FullDefinition[a]]]
LinkRead[kernel]//FullForm

Out[4]//FullForm= ReturnPacket[FullDefinition[a]]

The built-in parallelization functions have the same problem:

In[2]:= ParallelEvaluate[a=2;FullDefinition[a]]//FullForm
Out[2]//FullForm= List[FullDefinition[a],FullDefinition[a]]

One workaround is to use ToString:

In[3]:= ParallelEvaluate[a=2;ToString[FullDefinition[a]]]
Out[3]= {a = 2,a = 2}

Why FullDefinition returns unevaluated in MathLink session although it
works as expected in interactive MathKernel session? Is it possible to
make it working without any glitches?

Any ideas?




  • Prev by Date: Re: And now for something completely different
  • Next by Date: Re: Genomes Mathematica knows about and how to use them?
  • Previous by thread: Re: Timing progress bar
  • Next by thread: Re: Why FullDefinition does not work in MathLink mode?