MathGroup Archive 2008

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

Search the Archive

Re: Path to *.m file

  • To: mathgroup at smc.vnet.net
  • Subject: [mg86529] Re: Path to *.m file
  • From: David Bailey <dave at Remove_Thisdbailey.co.uk>
  • Date: Thu, 13 Mar 2008 04:31:44 -0500 (EST)
  • References: <fr0cr7$ekp$1@smc.vnet.net> <fr2mei$o2t$1@smc.vnet.net> <fr5e8e$odd$1@smc.vnet.net> <fr7onk$37d$1@smc.vnet.net>

Albert Retey wrote:
> Hi,
> 
>> I too would like a way to determine the path of a .m file while it is 
>> being loaded by Get. None of the replies provide a fool-proof way of 
>> doing this (e.g. in the not unusual case that you have two files with 
>> the same name in different directories). 
> 
> I absolutely agree with your wish that this information should be 
> available without any hacking but I think that there is no way to load a 
> file with Get which is not the first  in FileNames[filename,$Path] 
> unless you use an absolute path for filename. The latter is easy to 
> handle and covered with the else condition in:
> 
> Catch[If[
>      FileType[$Input]=!=File,
>      First[FileNames[$Input,$Path]/.{}:>Throw[$Failed]],
>      $Input
>   ]]
> 
> so I think the above construct should work for the case you named.
> 
>> It would be nice if Wolfram 
>> Research added this to their 'to do' list!
> 
> I'm sure you have seen the post of Carl Woll about an undocumented 
> private variable that holds that information. Looks like the people at 
> Wolfram found this information valuable, too, so it probably is only a 
> small effort to provide that information to the users/package developers 
> without hacks and workarounds.
> 
> Sorry for the post with only marginal new information but maybe keeping 
> the thread alive convinces someone that we really want that little 
> information accessible :-)
> 
> albert
> 

Albert,

I take your point, although technically there is still room for 
uncertainty because the .m could create a file of the same name 
somewhere earlier in the path. OK - I know that is a bit unlikely, but 
since this information is easily obtainable from the OS, it would be 
nice if Mathematica handed it on in a completely reliable way.

David Bailey
http://www.dbaileyconsultancy.co.uk


  • Prev by Date: Re: Impedance Equation fit to Complex Data
  • Next by Date: Re: Question on Sum[] function
  • Previous by thread: Re: Path to *.m file
  • Next by thread: Re: How to use Thread when second argument to function is a list of lists?