Rakudo Star 2010.10がリリースされていますね
Rakudo Star 2010.10 released
基本的にPerlが好きなのは、実用的だけど楽しい感じなんだな。最初に「実用」が来る感じ。でも楽しい。
そうすると、発展途上のPerl6はいつ学ぶのが良いのだろうか。使って楽しい!とならないと、なかなか踏み出せないのだけど。
codeの事
2010年10月30日
2010年10月24日
Perlではディレクトリを作るための組み込み関数として、mkdirが用意されています。使い方は簡単で、関数の引数としてディレクトリ名を渡すと、ディレクトリを作成します。
$ perl -e 'mkdir test'
$ ls -l
...
drwxr-xr-x 2 xxx staff 68 10 23 22:53 test
とてもシンプルな関数ですが、シンプルすぎて深い階層のディレクトリを一発で作る事ができません。繰り返しmkdirを使う必要が有ります。
しかし、標準モジュールのFile::Pathモジュールを使えば一発で深い階層のディレクトリも作れます。
$ perl -MFile::Path -e 'mkpath("test/test2")'
$ tree
.
└── test
└── test2
2 directories, 0 files
すでにディレクトリが存在する場合は作成されません。Unixコマンドのmkdir -pと同じです。
気をつけないといけないのは、File::PathモジュールはVer.2.00以降、APIが変わっているところです。
Ver.2.00より前ではmkpath関数が自動的にインポートされますが、Ver.2.00以降は同じ機能を持つmake_tree関数を明示的にインポートして使います。
use File::Path qw(make_tree)
make_tree('test/test2/')
$ perl -MModule::CoreList -e "print Module::CoreList->first_release('File::Path', 2.00);"
5.008009
Ver.2.00が標準モジュール入りしたのはPerl 5.8.9以降なので、古いバージョンを使っていて新しいドキュメントを読んでいると、混乱します(しました...)。
なお、逆にディレクトリを消す関数は、rmtree(Ver.2.00以降はremove_tree)が用意されています。
2010年10月10日