Thanks for your feedback (which has been acknowledged in pod) and let me know if you need or discover something else,
To have a mention in the gitworld is quite gratifying. Maybe all of this work going through _Intermediate Perl_ is starting to pay-off.
I have thoroughly enjoyed replicating your work and wish that I could get it all. Sometimes they are over my head. I have many of the same questions that I've had for a while now, and this might showcase how to answer a couple of them categorically.
Let's start the usual way:
$ pwd
/home/bob/Documents/meditations/Algorithm-Markov-Multiorder-Learner-ma
+ster
$ perl Makefile.PL
Checking if your kit is complete...
Warning: the following files are missing in your kit:
.BACKUP/28.06.2019_13.28.tgz
data/2.short.shelley.txt
data/ShelleyFrankenstein.txt
...
states/small.fa.state
Please inform the author.
Generating a Unix-style Makefile
Writing Makefile for Algorithm::Markov::Multiorder::Learner
Writing MYMETA.yml and MYMETA.json
So there's ten files or so that we get warnings for their absence. If I'm to guess, you might struggle with how much of an example file to leave for the distribution. I think data/2.short.shelley.txt in its 2 paragraphs is perfect. The entire shelley text is probably too much. I must say, it is a great text to work with. Let me say this though, without an existing data/2.short.shelley.txt , your test fails.
My BIG QUESTION about these distributions has been "where do you put the data?" If I put it in a place so that the install test passes as one would expect from such source:
$ pwd
/home/bob/Documents/meditations/Algorithm-Markov-Multiorder-Learner-ma
+ster/t
$ cat 01-learn-text.t
#!/usr/bin/env perl
use strict;
use warnings;
use lib 'blib/lib';
use Test::More;
use Algorithm::Markov::Multiorder::Learner;
my $num_tests = 0;
my $input_corpus_filename = 'data/2.short.shelley.txt';
...
Then I can't figure out how to do the paths on the command line. Consider this the base:
$ pwd
/home/bob/Documents/meditations/Algorithm-Markov-Multiorder-Learner-ma
+ster
$ ls
bin Changes lib Makefile.PL MYMETA.json output README
+ xt
blib data Makefile MANIFEST MYMETA.yml pm_to_blib t
$ cd data
$ ls
1.mp.txt 2.short.shelley.txt 'Untitled Document 1'
1.pope.txt 3.Shelley_short.txt
2.Shelley_short.txt ShelleyFrankenstein.txt
Our files are in a child directory named data .
$ cd ..
$ pwd
/home/bob/Documents/meditations/Algorithm-Markov-Multiorder-Learner-ma
+ster
$ cd blib/
$ cd script/
$ pwd
/home/bob/Documents/meditations/Algorithm-Markov-Multiorder-Learner-ma
+ster/blib/script
$ ls
analyse_DNA_sequence.pl analyse_text.pl predict_text.pl
analyse_image.pl predict_image.pl read_state.pl
$
Meanwhile our scripts are in a grandchild directory. And this per the makefile:
cp bin/analyse_text.pl blib/script/analyse_text.pl
"/usr/bin/perl" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/an
+alyse_text.pl
Am I correct that this script needs to be run in
Algorithm-Markov-Multiorder-Learner-master/blib/script
Forgive me if I missed this, but can you lay out an example that works for invoking analyse_text.pl ?
|