in reply to Re: Simulating Perl6 Meta/Hyper operators with pure Functional Programming
in thread Simulating Perl6 Meta/Hyper operators with pure Functional Programming

> you'll likely want to write a lift function

An important part of the concept is to return an iterator to the LHS in scalar context for the laziness an array-ref wouldn't help.

And there is no context info which tells me if an X {} is nested or already at the RHS of an assignment.

(OK I could use metamagic like Damian's Contextual::Return which I never really understood, I'm still suspicious that it might be a April's fool joke)

> you have invented monads.

kind of ... already in 2011 ... see YAPC talk

(well even earlier if you count in Frankfurt Perl Workshop)

> the way to solve problems in purely functional languages

OK ... needs disambiguation. I don't really care here about side effects, which is the motivation for monads in Haskell.

But solutions which "only" work with code-references and closures (i.e. w/o blessing or other magic) have many benefits ... like portability.

Cheers Rolf

( addicted to the Perl Programming Language)

  • Comment on Re^2: Simulating Perl6 Meta/Hyper operators with pure Functional Programming