FWIW, I have been trying to get 
https://modules.perl6.org/dist/Object::Trampoline to work with lazy attributes: 
so far this has gotten me into an infiniloop .  Perhaps you can find out why  
:-)

> On 5 Sep 2018, at 23:10, Simon Proctor <simon.proc...@gmail.com> wrote:
> 
> So I have a thought for how to do lazy attributes without Proxy objects. It 
> is late so I'll try and poke about at it tomorrow but I think we can Mixin a 
> role to the Attribute using a trait. 
> 
> The role will track if the attribute was set to a value at build and if not 
> call a block it's given when first read from. This gets round the issue of if 
> we want to set it to Any.
> 
> I *think* this will work. The stuff I've been doing with Trait::Env would 
> point that way.
> 
> On Wed, 5 Sep 2018, 19:48 Vadim Belman, <vr...@lflat.org> wrote:
> This one is easy to explain. My primary selling point of using Perl6 is its 
> multithreading capabilities. The final code would have to deal with a really 
> big number of devices and parallel processing is of a great help here. 
> Resource-vise it's way more reasonable to have a single process with tens of 
> threads than tens of processes. Perl5 involvement would level down this 
> advantage.
> 
> Otherwise, I don't need the whole Moo. Perl6 has enough of good stuff to deal 
> with. I was only missing laziness and triggers the most. Just added filtering 
> feature on top of it as Moo lacks it (and for the purpose I had to create 
> MooX::AtttributeFilter, but that's another story...)
> 
> > 5 вер. 2018 р. о 10:43 Ralph Mellor <ralphdjmel...@gmail.com> написав(ла):
> > 
> > This is another follow up to Vadim's post.
> > 
> > Vadim, you didn't touch upon the `use Moo:from<Perl5>;` approach.
> > 
> > As you noted, you wanted to avoid P5.
> > 
> > And you've already created AttrX::Moo.
> > 
> > So perhaps you see anything related to Inline::Perl5 as doubly moot.
> > 
> > Regardless, I really would love to hear your take on it as an alternative 
> > approach to the one you've taken even if only to guide someone *else* 
> > taking that approach.
> > 
> > Likewise anyone else reading this.
> > 
> > ----
> > 
> > I talked about Inline::Perl5 in my SO commentary. Have you used it?
> > 
> > The basic approach is you just write `use 
> > Module::Such::As::Moo:from<Perl5>;` and stuff works as you'd expect if the 
> > module were a P6 module. Behind the scenes it is executing P5 code using 
> > the usual P5 interpreter and run-time and data, objects, calls, and 
> > exception handling are automatically mapped to the equivalent P6. (Thanks 
> > to work done by Stefan Seifert and friends over the last 4 years.)
> > 
> > Going this route, you would just need to figure out how to declare 
> > attributes on the P6 side such that Moo does its thing on the P5 side. If 
> > you got that working you'd presumably be able to use P6 to seamlessly 
> > interoperate with *existing* P5 code that uses Moo objects and would get as 
> > much as you wanted of Moo's functionality and battle-hardening for free.
> > 
> > You would presumably be able to do a lot more work in P6 with this P5/P6 
> > interop than you could with just AttrX::Moo. And the simple :from<Perl5> 
> > solution would presumably be even more widely interesting to users with Moo 
> > code and an interest in P6 than a pure P6 AttrX::Moo.
> > 
> > ----
> > 
> > Which would you say is more true for you:
> > 
> > * You will be ignoring :from<Perl5> for the foreseeable future. If this is 
> > true it's presumably because you've already seriously explored :from<Perl5> 
> > and found it wanting and/or you or your company are already fully invested 
> > in the direction you've taken. Either way, if so, you might perhaps 
> > experience discussion of it as an unwelcome distraction; please LMK if 
> > that's the case.
> > 
> > OR
> > 
> > * You prefer to largely ignore :from<Perl5> just for now. (Hopefully you're 
> > willing to say at least a *little* about your view of it in this 
> > sub-thread.)
> > 
> > If you haven't tried :from<Perl5> I can't help but wonder if perhaps we let 
> > you down by not advocating strongly enough for you to explore it.
> > 
> > If you have, I can't help but wonder what you made of it and why you ruled 
> > out using Moo features in P6 via :from<Perl5>.
> > 
> > So in summary I'm anxious to hear whether you tried :from<Perl5> and found 
> > it wanting; or we just failed to adequately bring your attention to it; or 
> > you rejected it from the get go based on your understanding of its 
> > relevance (or rather irrelevance) to your situation.
> > 
> > --
> > raiph
> 
> Best regards,
> Vadim Belman
> -- 
> Simon Proctor
> Cognoscite aliquid novum cotidie

Reply via email to