Hi Jovan,

That’s much more helpful! Thank you.

Could you edit your installed AutoLoader (use “perldoc -l PDL::AutoLoader” to 
locate it, and you might need to turn off “read-only” on it) and add some 
debugging to see what’s going on?

Best regards,
Ed

________________________________
From: Jovan Trujillo <jovan.trujil...@gmail.com>
Sent: Thursday, April 11, 2024 6:19:30 PM
To: Ed . <ej...@hotmail.com>
Cc: perldl <pdl-general@lists.sourceforge.net>
Subject: Re: [Pdl-general] $PDL::AutoLoader::Rescan = 1 on Windows 10

Hi Ed,

Thanks for the reply.

Here is my version of Strawberry Perl installed on Windows 10 Enterprise 
Version 22H2 OS Build 19045.4291:

----------------------------------------------
 Welcome to Strawberry Perl PDL Edition!
 * URL - http://strawberryperl.com + http://pdl.perl.org
 * to launch perl script run:      perl 
c:\my\scripts\pdl-test.pl<http://pdl-test.pl>
 * to start PDL console run:       pdl2
 * to update PDL run:              cpanm PDL
 * to install extra module run:    cpanm PDL::Any::Module
          or if previous fails:    ppm PDL::Any::Module
 * or you can use dev tools like:  gcc, g++, gfortran, gmake
 * see README.TXT for more info
----------------------------------------------
Perl executable: C:\strawberry-perl\perl\bin\perl.exe
Perl version   : 5.26.1 / MSWin32-x64-multi-thread
PDL version    : 2.087

Here is an example with perldl repl:

perlDL shell v1.357
 PDL comes with ABSOLUTELY NO WARRANTY. For details, see the file
 'COPYING' in the PDL distribution. This is free software and you
 are welcome to redistribute it under certain conditions, see
 the same file for details.
ReadLines, NiceSlice, MultiLines  enabled
Reading PDL/default.pdl...
Found docs database C:\strawberry-perl\perl\site\lib\PDL\pdldoc.db
Type 'help' for online help
Type 'demo' for online demos
Loaded PDL v2.087 (supports bad values)

Note: AutoLoader not enabled ('use PDL::AutoLoader' recommended)

pdl> use PDL::AutoLoader; $PDL::AuotLoader::Rescan = 1; sayHello();
Loading sayHello.pdl ...found ./sayHello.pdl
Hello Bob

pdl> # I change "Bob" to "Fred" and save. Run again.
pdl> sayHello();
Hello Bob

Same thing happens in pdl2:

load_rcfile: got $HOME = C:\strawberry-perl\data
load_rcfile: loading PDL/default.pdl
Perldl2 Shell v0.008
      PDL comes with ABSOLUTELY NO WARRANTY. For details, see the file
      'COPYING' in the PDL distribution. This is free software and you
      are welcome to redistribute it under certain conditions, see
      the same file for details.
Loaded plugins:
  CleanErrors
  Commands
  Completion
  CompletionDriver::INC
  CompletionDriver::Keywords
  CompletionDriver::LexEnv
  CompletionDriver::Methods
  DDS
  FindVariable
  History
  LexEnv
  MultiLine::PPI
  NiceSlice
  PDLCommands
  Packages
  PrintControl
  ReadLineHistory
Type 'help' for online help
Type Ctrl-D or quit to exit
Loaded PDL v2.087

pdl> use PDL::AutoLoader; $PDL::AutoLoader::Rescan = 1; sayHello();
Hello Fred
pdl> # Change "Fred" to "Bob" and save file. Rescan doesn't notice the new 
timestamp on the file.
pdl> sayHello();
Hello Fred

Hope this helps.

Thank you,
Jovan

On Wed, Apr 10, 2024 at 5:11 PM Ed . 
<ej...@hotmail.com<mailto:ej...@hotmail.com>> wrote:

Hi Jovan,



You’re going to need to share more information on exactly what you did and what 
happened as a result.



Which versions of Perl (is it Strawberry? Which version?) and PDL are you 
running?

Which REPL is it?

What was the script before and after you changed it, and how do you know it 
didn’t get rescanned?



Best regards,

Ed



________________________________
From: Jovan Trujillo 
<jovan.trujil...@gmail.com<mailto:jovan.trujil...@gmail.com>>
Sent: Wednesday, April 10, 2024 10:20:15 PM
To: perldl 
<pdl-general@lists.sourceforge.net<mailto:pdl-general@lists.sourceforge.net>>
Subject: [Pdl-general] $PDL::AutoLoader::Rescan = 1 on Windows 10

I'm trying to understand if I change a *.pdl function and save it on Windows 
10, why doesn't PDL::AutoLoader recognize the change and reload the script? I 
have set $PDL::AutoLoader::Rescan = 1 in my REPL, but it doesn't work. It only 
runs the original *.pdl script before I changed it.


_______________________________________________
pdl-general mailing list
pdl-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-general

Reply via email to