作者: Bruce.
日時: 2004/8/27(20:16)
Bruce. です。

Tokyo.pmのメーリングリストで話題になったのですが、ぱっとみて
一瞬動作がわからないPerlコード。

sub init_sh
{
    my $fname = shift;
    local $/ = "";
    open my $fh, $fname or die $!;
    %lslr = map {sub {substr(shift,0,-1), \@_}->(split /\n/)} <$fh>;
}

要はLispやPythonでいうところのlambdaみたいなもんですね。
#Rubyにもあるか

元ネタは 「君ならどう書く lslRシェル」でスクリプト全体は
  http://www014.upp.so-net.ne.jp/tetryl/llw2004/lslRsh.pl
にあります。

foo:
a
b
c

bar:
x
y

のようなテキストを入力として':'のついたものを(':'を取り除いて)キーにし、
それ以下のものをリストにしてハッシュの値とすると。

-- 
木村浩一
  I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
  mail kbk@...
  web  www.kt.rim.or.jp/~kbk/