Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic

Re: Re:x6 Think for yourself.

by tilly (Archbishop)
on Nov 04, 2003 at 06:24 UTC ( #304342=note: print w/replies, xml ) Need Help??

in reply to Re:x6 Think for yourself.
in thread is the use of map in a void context deprecated ?

I believe that many people find easier to understand many list-oriented algorithms if you write them backwards. That is, think of:
@minutes = map { $_/60 } @seconds;
as meaning something like:
@seconds ==> map { $_/60 } ==> @minutes # you could do more complex stuff here... ;
(Syntax chosen because it is valid Perl 6.)

When you think this way, then many things that are natural to do with list-oriented operators become more intuitive. For instance merlyn has told me that he thought up the Schwartzian transform by writing it mentally as a pipeline and then rewrote it in Perl. It is only confusing when you see it because our eyes normally scan left to right, top to bottom but the flow of the calls actually goes right to left, bottom to top.

In Perl 5 that is a useful crutch until your eyes learn how to "parse" things properly. In Perl 6 it is such a useful crutch that I plan to do things that way... ;-)

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://304342]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (4)
As of 2018-06-21 01:24 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (117 votes). Check out past polls.