what does beach season mean? Semaphore practice!
use threads; use Thread::Semaphore; $a={a=>'Just ',b=>'another ',c=>'Perl ',d=>'thread, '}; $s = Thread::Semaphore->new; new threads (sub{eval{$/=abs ord($_)-96;$s->down($/);print$$a{$_};$s-> +up($/+1)}})->detach for reverse('a'..'d'); $s->down(5);