in reply to Performance in CLI Game

a couple of general suggestions.

when writing something that needs to update a console, you want to try to update the screen as little as possible, because you are going to spend the majority of your time just printing things (especially if you are going over a network connection). you'll also get a lot of flicker if you redraw the whole screen every time. when you generate your display, try making the barriers contours at the top and bottom instead of walls. that way you can update only the characters that change from frame to frame, and your display will be much smoother. try looking at Curses or the Term::* modules for information on cursor movement.

your program ran way too fast for me. i had to add a select(undef,undef,undef,.1) so i could play it. you will probably want to have some kind of timing delay. take a look at Time::HiRes (the select thing isn't portable).

i'm always happy to see text games. i have a small maze program that i've written (http://robobunny.com/projects/textmaze) that has brought me endless entertainment.