<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/hirokidaichi/">
    <title>歪んだエンジニアの学習帳</title>
    <link>http://w.atwiki.jp/hirokidaichi/</link>
    <atom:link href="https://w.atwiki.jp/hirokidaichi/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>歪んだエンジニアの学習帳</description>

    <dc:language>ja</dc:language>
    <dc:date>2007-11-24T17:27:53+09:00</dc:date>
    <utime>1195892873</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/12.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/35.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/16.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/34.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/33.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/32.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/1.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/31.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/30.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/hirokidaichi/pages/2.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/12.html">
    <title>Programming/Perl</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/12.html</link>
    <description>
      #ls(Programming/)
* Perlの学習備忘録 [#db687cad]

ひろきのだいちのPerl学習備忘録。
#contents

* Perl使い方一覧 [#k52b69aa]

* Perl学習備忘録--CPAN編-- [#acfd4757]
**使い方 [#cf688718]

**インストールしたモジュール [#bacd9f68]

**モジュールの種類 [#q8802d7c]
***プラグマモジュール [#l42f0a90]
***関数 [#x08d1659]
***OOPクラス [#ab04a2fd]

* Perl学習備忘録--変数編-- [#eafbc2bc]

**変数の種類と分析 [#z560fe04]
#ref(./perl_var.jpg)
***スカラー [#u8ca6664]
***配列 [#t3e2b078]
***ハッシュ [#f01a1307]
***サブルーチン [#n92753a3]
***型グロブ [#j353c067]
***リファレンス表現 [#x9d434eb]
***デリファレンス表現 [#hd11d8ae]
***定数表現 [#u61642de]
***フォーマット [#f1a44380]
*** [#rf3e6ed3]
**コンテキスト [#c9e9668b]

**特殊変数 [#f3fac4bd]

http://www.rfs.jp/sb/perl/02/nw01.html

**演算子 [#d7167ec5]
***ファイルテスト演算子 [#ub9c87ab]
|-r|読み込み可能であれば|
|-w|書き込み可能であれば|
|-x|実行可能であれば|
|-o|実行ユーザーと所有者が同一であれば|
|-R|実行ユーザーでなく、実ユーザーで読み込み可能であれば|
|-W|実行ユーザーでなく、実ユーザーで書き込み可能であれば|
|-X|実行ユーザーでなく、実ユーザーで実行可能であれば|
|-O|実行ユーザーでなく、実ユーザーのものであれば|
|-e|存在すれば|
|-z|存在し、サイズが 0 であれば|
|-s|ファイルサイズを返す|
|-f|通常ファイルであれば|
|-d|ディレクトリであれば|
|-l|シンボリックリンクであれば|
|-p|名前付きパイプであれば|
|-S|ソケットであれば|
|-T|テキストファイルであれば|
|-B|バイナリファイルであれば|
|-b|ブロック型の特殊ファイルであれば|
|-c|キャラクタ型の特殊ファイルであれば|
|-u|setuid ビットがセットされていれば|
|-g|setgif ビットがセットされていれば|
|-k|sticky ビットがセットされていれば|
|-M|最終更新時刻からの日数|
|-A|最終アクセス時刻からの日数|
|-C|最終 i ノード変更時刻からの日数|
|-t|ファイルハンドルが tty としてオープンされていれば|
#highlight(linenumber,Perl){{

#!/usr/bin/perl -w

use strict;
use Switch;
use warnings;
use Error qw(:try);
use YAML;
use Data::Dumper;

my $file=shift @ARGV;
print &quot;-e:&quot;.((-e $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-r:&quot;.((-r $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-w:&quot;.((-w $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-x:&quot;.((-x $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-o:&quot;.((-o $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-R:&quot;.((-R $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-W:&quot;.((-W $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-X:&quot;.((-X $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-O:&quot;.((-O $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-z:&quot;.((-z $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-s:&quot;.(-s($file)).&quot;\n&quot;;
print &quot;-f:&quot;.((-f $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-d:&quot;.((-d $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-l:&quot;.((-l $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-p:&quot;.((-p $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-S:&quot;.((-S $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-T:&quot;.((-T $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-B:&quot;.((-B $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-b:&quot;.((-b $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-c:&quot;.((-c $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-u:&quot;.((-u $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-g:&quot;.((-g $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-k:&quot;.((-k $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
print &quot;-M:&quot;.(-M($file)).&quot;\n&quot;;
print &quot;-A:&quot;.(-A($file)).&quot;\n&quot;;
print &quot;-C:&quot;.(-C($file)).&quot;\n&quot;;
print &quot;-t:&quot;.((-t $file)?&quot;true&quot;:&quot;false&quot;).&quot;\n&quot;;
1;
__END__


-e:true
-r:true
-w:true
-x:true
-o:true
-R:true
-W:true
-X:true
-O:true
-z:false
-s:1143
-f:true
-d:false
-l:false
-p:false
-S:false
-T:true
-B:false
-b:false
-c:false
-u:false
-g:false
-k:false
-M:0.00929398148148148
-A:0
-C:0.00929398148148148
-t:false
}}
***パターンマッチ演算子 [#ge77ba8e]
***範囲演算子 [#r7cca34f]
***文字列演算子 [#oe9e841a]

**スコープ [#xf62f0ba]
***my [#wa73b96a]
***local [#n8eb0b06]
***our [#kb379b52]

* Perl学習備忘録--制御構文編-- [#ha6342c6]

**if elsif else [#n504c94e]

**unless [#g08c457a]

**while [#qdedceec]

**until [#i9be5463]

**for [#f88b6210]

**foreach [#x3b90bc9]
 
**ループ制御構文 [#s5d15f9a]

**コメント/pod [#h38ce9b7]

**[拡張]switch [#e33e1cd1]

**[拡張]try catch finally [#s38431f2]

* Perl学習備忘録--特殊な関数-- [#n44c2c8a]
**require [#h26c4970]
**package [#x0c8ebd6]
**use [#a34ffc1b]
**bless [#w17d0dbe]
**import/export [#ha339463]
**tie [#w4408ff1]
* Perl学習備忘録--組み込み関数-- [#pa107f72]

* Perl学習備忘録--正規表現編-- [#c0639dde]

* Perl学習備忘録--OOP編-- [#j1c9ec6b]
** 雑感 [#k7a10711]
PerlのOOPは、後から追加されただけあって結構無理やり。
** BEGIN [#ua995684]
まずはBEGINブロックから。
** クラス定義 [#n06ff0b4]



** 継承 [#zb28dcd7]
***@ISA [#z93a4f9d]
#code(linenumber,Perl){{
{ package Animal;
  sub speak {
  my $class = shift;
  print &quot;a $class goes &quot;, $class-&gt;sound, &quot;!\n&quot;;
  }
}

{ package Cow;
  @Cow::ISA = qw(Animal);
  sub sound { &quot;mooo&quot; }
}

Cow-&gt;speak;
}}
***use base [#f535a029]
** @EXPORT [#ubc04f74]
** superメソッド [#bd3d70cd]

** AUTOLOAD [#ub5f3052]

** カプセル化 [#udc7f5e5]
***use private [#oab20d6f]
***use public [#df697785]
***use private [#k132ed3f]
** Class::Fields [#p13abb81]

* Perl学習備忘録--Debug編-- [#ka508cab]

** オブジェクトダンプ [#f45cd6d8]
***Dumper [#ld289b8a]
***YAML [#c07a7c32]
***JSON [#xe46aea3]
** Deparse [#b9ff1b6c]

** perl -de [#y3ccc2e1]

** スタックトレース [#oc2dd465]

* Perl学習備忘録--ベンチマーク編-- [#e5dc6d07]
* Perl学習備忘録--テスト手法編-- [#ma2f6660]

* Perl学習備忘録--C言語とのインタフェース-- [#xe004d40]
**Inline::C [#i0dabd40]

**C言語モジュール [#v1d6da4f]

* Perl学習備忘録--mod_perl編-- [#yd9396e9]

** mod_perlとは [#n0909aa9]

** install [#nb8cdebe]


* Perl学習備忘録--Memcached編-- [#cc1d453c]

** about memcached [#f6cbaa56]

** install [#dec0e013]

* Perl学習備忘録--POE編-- [#b7ea96cd]
** about poe [#u35dd7cc]

** install [#x7f856f9]
* Perl学習備忘録--ithread編-- [#w2e1fc95]
** about ithread [#q2934839]

* Perl学習備忘録--モジュール使い方編-- [#o825d3df]

* Perl学習備忘録--ユーザプラグマ-- [#le1fe1d8]

* Perl学習備忘録--演算子のオーバーロード-- [#o1966ae2]    </description>
    <dc:date>2007-11-24T17:27:53+09:00</dc:date>
    <utime>1195892873</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/35.html">
    <title>DesignPattern</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/35.html</link>
    <description>
      *モテふわ愛されガールのためのプログラミング講座
+『第一回：プログラ系で差をつけろ！』
+『第二回：ディバコンでオトコも仕事も着まわし術』
+『第三回：なでしこ娘の簡単プログラミング』
+『第四回：繰り返しテクニック』
+『第五回：再帰をかける！20代からのメイク』
+『第六回：合コンで愛される女、捨てられる女度』
+『最終回：クリスマスデートに使えるイベントドリヴン』 

*プログラミング言語学習
#ls(Programming/)

*デザインパターン
#ls(DesignPattern)

*各種サーバ学習記録
#ls(Server/)

*OS機能、APIなどについての学習記録
#ls(OS/)
#ls(API/)
*悪知恵
#ls(悪知恵/)    </description>
    <dc:date>2007-11-13T19:03:40+09:00</dc:date>
    <utime>1194948220</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/16.html">
    <title>Programming/VimScript</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/16.html</link>
    <description>
      *Vim Script備忘録
#contents
*Vimについて
vimとは、emacsにならぶunixシステムのエディタなんだけど、
このエディタなかなかどうして奥が深いスクリプト言語をつんでるんだ。
**スクリプトの定義方法

*変数
**数値
**文字列
**リスト
**ディクショナリ
*制御構文
**if endif
**while endwhile
**for endfor
**try catch endtry
*関数
**関数定義
**関数の再定義

*オプション
*キーマッピング
*オブジェクト指向
**クラス宣言
**継承


*標準関数

*リンク集
-[[名無しのvim使い&gt;http://nanasi.jp/]]
-[[Vim documentation: options&gt;http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/options.html]]
-[[Vimもげ - 地獄の猫日記&gt;http://d.hatena.ne.jp/nokturnalmortum/20070315]]
-[[異なる vim プロセスで yank/paste するプラグイン yanktmp.vim - 川o・-・）＜2nd life &gt;http://d.hatena.ne.jp/secondlife/20060705/1152110844]]
-[[Vimの使い方－Tips&gt;http://www15.ocn.ne.jp/~tusr/vim/vim_text2.html]]
-[[Big Sky :: 意外と知られていないvimのtips(vimでオブジェクト継承)&gt;http://www.ac.cyberhome.ne.jp/~mattn/cgi-bin/blosxom.cgi/software/linux/vim/20070817164837.htm]]
-[[vim/script - EthnaWiki&gt;http://project-p.jp/halt/kinowiki/vim/script]]
-[[Greenbear Laboratory - Vim覚え書き&gt;http://mono.kmc.gr.jp/~yhara/w/?VimMemo]]
-[[vim script で oop - PBD - 虹色センチメンタル - subtech&gt;http://subtech.g.hatena.ne.jp/secondlife/20060620/1150736435]]
-[[心は十五歳の少年漂流記 » vim&gt;http://seasaw.eek.jp/wordpress/?page_id=16]]
-[[Vim documentation: usr_41&gt;http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/usr_41.html]]
-[[Big Sky :: 意外と知られていないvimのtips(vimでどんなソースファイルでもindent)&gt;http://www.ac.cyberhome.ne.jp/~mattn/cgi-bin/blosxom.cgi/software/linux/vim/20071023124151.htm]]
-[[http://www.kaoriya.net/vimdoc_j/eval.txt&gt;http://www.kaoriya.net/vimdoc_j/eval.txt]]
-[[subtech - PBD - 虹色センチメンタル - vim script で HTTP ク...&gt;http://subtech.g.hatena.ne.jp/secondlife/20060622/1150982663]]
-[[vi - Hirotake Itoh&#039;s memo by PukiWiki&gt;http://aki.issp.u-tokyo.ac.jp/itoh/PukiWiki/pukiwiki.php?vi]]
-[[vim - PukiWiki&gt;http://kasahi.net/pukiwiki/index.php?vim]]
-[[ActionScript3無料開発環境構築(VimScript利用) « ryan’s blog&gt;http://ryan5500.wordpress.com/2007/09/03/actionscript3%E7%84%A1%E6%96%99%E9%96%8B%E7%99%BA%E7%92%B0%...]]
-[[Greenbear Laboratory - VimScript覚え書き&gt;http://mono.kmc.gr.jp/~yhara/w/?VimScriptMemo]]
-[[配列操作の比較表:VBScript VimScript - メモ帳&gt;http://d.hatena.ne.jp/parasporospa/20060815/1155607364]]
-[[bonar note - vimで効率的にコードを書くための小技&gt;http://d.hatena.ne.jp/bonar/20070415/1176651778]]
-[[ずんWiki - Perlでマルチスレッド&gt;http://www.kawaz.jp/pukiwiki/?Perl%A4%C7%A5%DE%A5%EB%A5%C1%A5%B9%A5%EC%A5%C3%A5%C9]]
-[[文字列操作の比較表：Ruby＞ VimScript - メモ帳&gt;http://d.hatena.ne.jp/parasporospa/20061024/p3]]
-[[ActionScript for JavaScript(er).&gt;http://usrb.in/amachang/static/shibuyaes/]]
-[[bonar note - cut＞ sort＞ uniq で生産性を5%向上させる&gt;http://d.hatena.ne.jp/bonar/20070618/1182183655]]
-[[gmailで添付ファイルが自動でアップロードされるしくみ - bits and bytes&gt;http://labs.gmo.jp/blog/ku/2007/05/gmail.html]]    </description>
    <dc:date>2007-11-08T05:25:18+09:00</dc:date>
    <utime>1194467118</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/34.html">
    <title>API/Atom Publishing Protocol</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/34.html</link>
    <description>
      *Atom Publishing Protocol
#contents;
*概要    </description>
    <dc:date>2007-11-07T03:48:50+09:00</dc:date>
    <utime>1194374930</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/33.html">
    <title>API/OAuth</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/33.html</link>
    <description>
      *OAuth
#contents;
*概要    </description>
    <dc:date>2007-11-07T03:48:10+09:00</dc:date>
    <utime>1194374890</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/32.html">
    <title>API/OpenID</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/32.html</link>
    <description>
      *Open ID
#contents;
*概要    </description>
    <dc:date>2007-11-07T03:47:34+09:00</dc:date>
    <utime>1194374854</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/1.html">
    <title>トップページ</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/1.html</link>
    <description>
      *モテふわ愛されガールのためのプログラミング講座
+『第一回：プログラ系で差をつけろ！』
+『第二回：ディバコンでオトコも仕事も着まわし術』
+『第三回：なでしこ娘の簡単プログラミング』
+『第四回：繰り返しテクニック』
+『第五回：再帰をかける！20代からのメイク』
+『第六回：合コンで愛される女、捨てられる女度』
+『最終回：クリスマスデートに使えるイベントドリヴン』 

*プログラミング言語学習
#ls(Programming/)

*各種サーバ学習記録
#ls(Server/)

*OS機能、APIなどについての学習記録
#ls(OS/)
#ls(API/)
*悪知恵
#ls(悪知恵/)    </description>
    <dc:date>2007-11-07T03:46:03+09:00</dc:date>
    <utime>1194374763</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/31.html">
    <title>API/OpenSocial</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/31.html</link>
    <description>
      *Open Social API
#contents;
*概要

*People Data API
*Activities Data API
*Presidence Data API    </description>
    <dc:date>2007-11-07T03:29:51+09:00</dc:date>
    <utime>1194373791</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/30.html">
    <title>Server/BIND</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/30.html</link>
    <description>
      #ls(Server/)    </description>
    <dc:date>2007-11-06T02:37:24+09:00</dc:date>
    <utime>1194284244</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/hirokidaichi/pages/2.html">
    <title>メニュー</title>
    <link>https://w.atwiki.jp/hirokidaichi/pages/2.html</link>
    <description>
      *メニュー
-[[トップページ]]
#ls(/)

----


// リンクを張るには &quot;[&quot; 2つで文字列を括ります。
// &quot;&gt;&quot; の左側に文字、右側にURLを記述するとリンクになります    </description>
    <dc:date>2007-11-05T19:37:36+09:00</dc:date>
    <utime>1194259056</utime>
  </item>
  </rdf:RDF>
