Hatena::Groupperl

のグぱぁ(nogのPerl勉強日記)

2010-10-04

trueだとかfalseだとか

10:51 | trueだとかfalseだとか - のグぱぁ(nogのPerl勉強日記) を含むブックマーク はてなブックマーク - trueだとかfalseだとか - のグぱぁ(nogのPerl勉強日記) trueだとかfalseだとか - のグぱぁ(nogのPerl勉強日記) のブックマークコメント

trueだとかfalseだとかそんな甘っちょろいものは存在しねぇ!!!

偽とみなされるのは

0数値0
() 空リスト
'0'文字列0
''空文字
undefundef

のみだっ!!

azurestoneazurestone2010/10/10 18:18Perlでは、「0」は文字列と数値の区別は、値ではなくコンテキストでします。
そう重要なのは、”コンテキスト”です。

http://www14.atpages.jp/jelfe/07/05.html
http://perldoc.jp/docs/perl/5.10.0/perldata.pod

sin5sin52010/10/12 10:44参考に頂いた二つのページが凄く参考になりました!!
ありがとうございます!!!

2010-09-30

perlbrewとcpanm環境構築ログ

19:36 | perlbrewとcpanm環境構築ログ - のグぱぁ(nogのPerl勉強日記) を含むブックマーク はてなブックマーク - perlbrewとcpanm環境構築ログ - のグぱぁ(nogのPerl勉強日記) perlbrewとcpanm環境構築ログ - のグぱぁ(nogのPerl勉強日記) のブックマークコメント

更のubuntuサーバーにperlbrew環境構築するまでのログ

sudo apt-get install zsh
sudo apt-get install subversion
sudo apt-get install git-core
sudo apt-get install curl
sudo apt-get install gcc

perlの前に個人的に必要なもの入れてた。git-core辺りの時にperlも引っ張られて入った。

gccは入れとかないとperlbrewでperlインストール出来ないと思う。

curl -LO http://xrl.us/perlbrew
perl perlbrew install
rm ./perlbrew
~/perl5/perlbrew/bin/perlbrew init

echo "source /home/nog/perl5/perlbrew/etc/bashrc" >> ~/.zshrc

perlbrew install perl-5.12.2
perlbrew switch perl-5.12.2

んでcpanmとlocal::libは入れた方がいいらしいのでいれる。

wget http://github.com/miyagawa/cpanminus/raw/master/cpanm
perl ./cpanm App::cpanminus
cpanm local::lib --verbose

最後に--verboseつけてる理由はcpanmの初回起動にcpanの設定周りを聞かれるため。


perlbrew

18:54 | perlbrew - のグぱぁ(nogのPerl勉強日記) を含むブックマーク はてなブックマーク - perlbrew - のグぱぁ(nogのPerl勉強日記) perlbrew - のグぱぁ(nogのPerl勉強日記) のブックマークコメント

perlbrewを使うとホームディレクトリ以下に好きなperlとそのモジュールをインストールできる。

rubyのrvmやpythonのvirtualenvみたいなものかなーと思うとその利用は必須なのではないかと思うのでとりあえず新しく立てているVirtualBox環境内に入れてみる。

参考にした

http://d.hatena.ne.jp/tokuhirom/20100716/perlenv

リャマ本読みかけ

10:33 | リャマ本読みかけ - のグぱぁ(nogのPerl勉強日記) を含むブックマーク はてなブックマーク - リャマ本読みかけ - のグぱぁ(nogのPerl勉強日記) リャマ本読みかけ - のグぱぁ(nogのPerl勉強日記) のブックマークコメント

ざーっと流してその後読んでるんだけど、どっちかというとアルパカ本が必要だったのかもしれない。

リャマ本はリファレンスとかの辺りの解説ほとんどないのね。

でも呪文的な省略の美学的な部分とか知らないことだらけなので、そういうとこ知るって意味ではよかったかもしれない。

読み終える前にアルパカ本注文しとこう。

高い高い。。。アルパカ本はマーケットプレイスで買おう。

CharlCharl2011/06/05 17:08That's not just the best aswner. It's the bestest answer!

szwpfekcbkzszwpfekcbkz2011/06/05 17:56n5l6ho <a href="http://apysztdawnnh.com/">apysztdawnnh</a>

fsmgszrfsmgszr2011/06/06 23:05Mqh4wS , [url=http://yafyczdxwwlj.com/]yafyczdxwwlj[/url], [link=http://uakajqmisnxf.com/]uakajqmisnxf[/link], http://gaoetmoscoww.com/

rjdssdrjdssd2011/06/09 19:37FDiQ9N , [url=http://czmhdjqmyvul.com/]czmhdjqmyvul[/url], [link=http://nqsmhqoyvdex.com/]nqsmhqoyvdex[/link], http://mjiifdmukcpw.com/

2010-09-29

リストと配列

11:48 | リストと配列 - のグぱぁ(nogのPerl勉強日記) を含むブックマーク はてなブックマーク - リストと配列 - のグぱぁ(nogのPerl勉強日記) リストと配列 - のグぱぁ(nogのPerl勉強日記) のブックマークコメント

昨日リストと配列をよく理解してなかったためはまった。

具体的には配列をネストして表現したかった時にリストを使ってしまってて、意味不明なことになっていた。

コードから意味辿るような勉強方法しかとってなかったけど、基本的な知識は事前にある程度必要と判断し、リャマ本を買った。

リャマ本買った

10:49 | リャマ本買った - のグぱぁ(nogのPerl勉強日記) を含むブックマーク はてなブックマーク - リャマ本買った - のグぱぁ(nogのPerl勉強日記) リャマ本買った - のグぱぁ(nogのPerl勉強日記) のブックマークコメント

早いとこ読み終えよう。

DenoxxDenoxx2012/02/21 16:46God, I feel like I soluhd be takin notes! Great work

zxxdywszxxdyws2012/02/23 19:03r46xvy <a href="http://zxrltmwuxpeb.com/">zxrltmwuxpeb</a>

zcdnjobqumizcdnjobqumi2012/02/24 00:19nQmh7H , [url=http://muztxzzfmeqv.com/]muztxzzfmeqv[/url], [link=http://qjwjuskbtcyi.com/]qjwjuskbtcyi[/link], http://jaclwrdidqbc.com/

2010-09-28

配列の要素数の取得の仕方

19:17 | 配列の要素数の取得の仕方 - のグぱぁ(nogのPerl勉強日記) を含むブックマーク はてなブックマーク - 配列の要素数の取得の仕方 - のグぱぁ(nogのPerl勉強日記) 配列の要素数の取得の仕方 - のグぱぁ(nogのPerl勉強日記) のブックマークコメント

use strict;
use warnings;

my @array = (100, 200, 300, 400);
my $num = @array;
print "$num\n";      #4
push(@array, 500);
$num = @array;
print "$num\n";      #5
print "@array\n";    #100 200 300 400 500

#lengthは文字列の長さ調べるものなので不適当
print length(@array);#1

さすがにソース弄ってたら何回も見てるけど慣れない。

これでもうミスしないようにする。

lestrratlestrrat2010/09/29 09:54より明示的にしたいのであれば scalar @array にしておくといいかも。

sin5sin52010/09/29 10:07ブコメでtokuhiromさんにも教えていただいてますが
scalar使った方がより明示的になって分かりやすいですね!
自分で書くときはそうするようにします!

2010-09-24

Starmanを使ってPSGI/PlackのHelloWorld

19:56 | Starmanを使ってPSGI/PlackのHelloWorld - のグぱぁ(nogのPerl勉強日記) を含むブックマーク はてなブックマーク - Starmanを使ってPSGI/PlackのHelloWorld - のグぱぁ(nogのPerl勉強日記) Starmanを使ってPSGI/PlackのHelloWorld - のグぱぁ(nogのPerl勉強日記) のブックマークコメント

PerlではPSGIという仕様があり、その実装としてPlackというものがあるみたいだ。

PSGI/PlackRubyでいうところのrackのようなもので、サーバとフレームワークの中間を取り持ってくれるものらしい。

少なくともこれからPerl始める人間としては、こっちに乗っておくべきと思うのでこちらを少し勉強する。

今までに作られたアプリを触る際には、これらに乗っかっていないアプリを触ることの方が圧倒的に多いんだろうけど、間違いなくこれからの本流になるところだと思うので、指針としては間違っていないと思う。

PSGIに対応したWEBサーバとしてStarmanというものがあるみたいなので、これを利用してHelloWorldをやってみようと思う。

Starmanのインストール

%sudo cpan Plack
%sudo cpan Starman

app.psgi

use strict;

sub app {
    my $env = shift;

    return [
      200,
      [ "Content-Type" => "text/plain"],
      [ "HelloWorld" ]
    ];
}
\&app;

起動&アクセス

%starman app.psgi

でサーバーが5000番で起動するので

http://servername:5000/

にアクセスすると

HelloWorldが表示される。

次の目標はSledgeStarman上で動かしたい。

http://github.com/mala/Sledge-PSGI

この辺を利用してやれば僕でもなんとかなる気がする。頑張る。


と思ったけど、残念ながら今の僕には公開されている情報のみでSledgePSGIで動かすのは難しい。

長期的な目標にして一旦は別のフレームワークでチャレンジすることにしよう。

NookNook2011/06/05 17:35Now that’s sbtlue! Great to hear from you.

jypqaffjypqaff2011/06/06 18:53amhg8L <a href="http://xtftvponwexm.com/">xtftvponwexm</a>

jwndycojwndyco2011/06/06 22:28GnzBwF , [url=http://gfztowezyfkd.com/]gfztowezyfkd[/url], [link=http://zpjvftagoazs.com/]zpjvftagoazs[/link], http://dyikkhehbvhw.com/

jmfbfgbjmfbfgb2011/06/09 19:10a5zapM , [url=http://urhkfqdjljyl.com/]urhkfqdjljyl[/url], [link=http://fthyfutqcclc.com/]fthyfutqcclc[/link], http://jnrhwswqfyzu.com/