# New Ticket Created by "Kamil Kułaga"
# Please include the string: [perl #122289]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/Ticket/Display.html?id=122289 >
Evaling objects won't work if code that eval was preompiled
independently. In this case class Planet and Class SpaceStation are
somewhat inaccesible in imported sub. Even though putting slurp $path
as argument of eval will fail. It was working on parrot but before big
changes that made parrot backend unusable (random issues) in my
project.
=begin pod
#FAILS on MOAR
@planets = from_file($path_planets);
#the same as below
#
https://github.com/teodozjan/perl-store/blob/master/lib/PerlStore/FileStore.pm
@stations = from_file($path_stations);
=end pod
#moar hack
note 'Readin $path_planets';
my $plan = slurp $path_planets;
@planets = EVAL $plan;
#moar hack
note 'Readin $path_stations';
my $stat = slurp $path_stations;
@stations = EVAL $stat;
>>> LOADING /home/kamil/dev/lacuna-cookbuk/bin/lacunacookbuk_client
+ /home/kamil/dev/lacuna-cookbuk/bin/lacunacookbuk_client (12 - 16)
| multi sub MAIN(:$tasks!, Bool :$update?){
|
| my Client $client .= new;
|
| create_session;
> r
>>> LOADING EVAL_0
>>> LOADING EVAL_1
>>> LOADING EVAL_2
+ Uncaught Exception
| Cannot invoke this object (REPR: Null, cs = 0)
+ /home/kamil/dev/lacuna-cookbuk/bin/lacunacookbuk_client (23 - 27)
| BodyBuilder.process_all_bodies;
| } else {
| BodyBuilder.read;
| }
| for @todo -> $willdo {
> q
- Run END blocks (y/N)?
$ perl6 --version
This is perl6 version 2014.06-118-gb25b868 built on MoarVM version
2014.06-63-g0fb638b
--
Pozdrawiam
Kamil Kułaga