Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re: Letter by letter

by Riales (Hermit)
on Apr 20, 2012 at 18:22 UTC ( #966228=note: print w/ replies, xml ) Need Help??


in reply to Letter by letter

Why the sleep after each print? Are you perhaps suffering from buffering?

If not, my initial thought when I think about printing a string letter by letter would be:

$| = 1; print $_ foreach (split '', $string);

Edit: I took a second look at the code you provided. I'm really not sure I understand what you're trying to do now. The second bit of the for loop is supposed to be a test that tells the loop when to stop, but since you're just assigning to $i, I'm pretty sure that loop will run forever.


Comment on Re: Letter by letter
Select or Download Code
Re^2: Letter by letter
by DaveMonk (Acolyte) on Apr 20, 2012 at 18:33 UTC
    Hmm... it prints out the string directly. I want it to instead of print "string", to make it so it has 1 second intervals between each character it's printing... But im going to read the article you linked me.

      Ah, in that case, I think you were mostly on the right track except with the buffering thing and the end case for the for loop.

      $| = 1; foreach my $letter (split '', $string) { print $letter; sleep 1; }

        Somewhat obscure, but I think the following is cute:

        sleep($|=print) for split '', $string;

        print returns 1 if it's successful.

        perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://966228]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (8)
As of 2015-07-07 09:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (88 votes), past polls