2008-05-15
■[Perl] YAPC::Asia 2008 1日め
とりあえず
- スライドとかupされていたので追記
Welcome to YAPC::Asia 2008 - Tatsuhiko Miyagawa
- Encountered a 404 error
- 開会の挨拶
- 去年は437名で今年は569名参加している.他のYAPCに比べても最大.
- しかしPerl Mongersは50人程度.ここにきたら自分もPerl Mongersと思ってほしいとのこと
TPF Introduction - José Castro (cog)
- José Castro :: International Man of Mystery
- The Perl Foundationの紹介
- 海外でconferenceの主催をしたり,Perl Mongersのサポートをしている
A Standard That Is Meant To Be Broken, 本当に! - Larry Wall
- Larry Wall御大によるPerl6のParsingの紹介
- Perl6のsyntaxはmethodとして記述する
- 文法自体が拡張可能.
{
use PlusMinusPerl;
+-$x; # (+-)$x
}
+-$x; # (+(-$x))
- COREもなく,キーワードもない
- ... =, !..はメタオペレータ
- "foo" !ne "bar"とか 3 !< 5aとか
拡張可能な言語というのは面白いけど,いろんな言語が混在するのは読みにくいような.もちろん,読みにくくすることができるだけで,そんなことをする必要はないのだけども.
perl5.10を使うべき510の理由 - Tokuhiro Matsuno (tokuhirom)
- ”><xmp>TokuLog 改メ tokuhirom’s blog
- Perl 5.10の紹介.あと,Perl 5.10使えよという話
- タイトルは急遽変更.といっても510も理由があったわけではない
- 2008には5.12.0がでる
- Perl 6.0.0 ...
- Perl 5.8と互換性があるので安心してほしい
- 唯一だめだったのはIngyのXXX.pm
- say.改行コード入れなくてよくなった
- dor operator
use feature qw/dor err/; $c = $a // $b; # if defined($a) ? $a : $b
- state variable (Cの静的変数のようなもの).以下のコードでカウンタができる
sub incr { state $i = 0; return $i++; }
s/(?<letter>.)\k/$+{letter}/g
Perl 5.10からは、-Xを重ね打ちすることもできるようになりました。
% perl -le 'print (-f -x shift)' /usr/local/bin/perl 1重ね打ちした場合、全ての条件が1の場合に1になります。すなわち
my $is_executable = -f -x $filename;は
my $is_executable = -f $filename && -x _;と等価ということです。
404 Blog Not Found:perl - stat()、-X 演算子、そして _ ファイルハンドル
- others
- misc attribute decoration
- $AUTOLOAD can be tainted
- ...
- more
- stat() on windows
- relocatable installation
- overload re-blessed reference
- ...
- CPANPLUSが標準モジュールに入ったので,それに依存するモジュール(たくさんある)も標準モジュールに入った.
- Time::Pieceなど
- Audreyとかのプレゼンからコピペしました
- 質疑
- misc attribute decorationって何
- 知らない.othersの辺はつっこまないで.
PSL = Perl as a Second Language - Dan Kogai
- 404 Blog Not Found
- Perlがfirst languageでない人のためへのPerlの紹介
- どうして外国語を学ぶのか
- languages pay more attention to particular subjects
- 他の言語を見ることで自分の言語を見直せる
- Perlが他の言語とどこが似ていてどこが似ていないのか
- perl is like python and ruby
print 'hello, world'
- 必要ないことは書かなくてよい
- perl is like scheme
- y-combinatorが書ける
- perl is not like ruby or smalltalk
- すべてがobjectであるわけではない
- autoboxがあるけど
- perlはオブジェクト指向が組み込まれていないけど,どう実装しているのか見ることができるので,perlでオブジェクト指向を学ぶべきだ
- そもそもオブジェクトって何
- 自分が何をできるかを知っているデータ
- blessしたrefereneによる実装
- InsideOutによる実装
- Mooseによる実装
- Perlは自然言語のようにcontext-oriented languageである
"1" + "1" # 2 1 . 1 # "11" print localtime() print scalar localtime()
- 資料がuploadされていました.
JavaScript Love for Perl Hackers - Ingy döt Net
- Ingy döt Net
- INGY DOT NET
- Ingy d?t net
- Ingy dt net
- Ingy d♨t net
- mr. net
- any questions?
- 今日話すこと
- Vroom
- pQuery
PQUERY(@urls)->find()->EACH(sub {...})
- 中貝.pm
- JS.pm
- CPANにjavascriptも置いてあるので,インストールしたjavascriptを探すのに役立つ.
Working in the cloud - Leon Brocard (acme)
- astray recipes
- cloud computingのすすめ
Step 3: Prophet - A peer to peer replicated property database
- fsck.com
- Cloud Computingは小作農だよ.他人のインフラを借りて開発している
- clとsvkやrtを開発している
- clと顔を合わせなければならないけど,遠いよね.じゃあ,真ん中をとってハワイで.
- prophet - syncable database
- semirelational
- joinは実装していない.高コストなので
- pear-to-pear
- どのレプリカに対してもupdate/pull/push/publishの操作が行える
- 変更はレプリカにpropagateする
- disconnected
- リアルタイムに更新しない
- いつでも更新することができる
- versioned
- 変更は記録される
- undoできる
- ヒストリを見ることができる
- property database
- RDBのように固定的なスキーまではなく属性と値
- self-healing conflict resolution
- resolutionを覚えておく
- resolutionをsyncする
- vote
- sd
- prophetは何に利用できるか
- replica type
- subversion
- 遅い
- filesystem
- readableで速いが,完全にatomicではない
- HTTP
- foreign replica
- subversion
- まだ作ったばっかり(10日)
最後らへん速かったのでちょっとよくわからなかった.
Easy system administration programming with a framework - フレームワークでシステム管理プログラミングをもっと簡単に - Gosuke Miyashita (mizzy)
- Gosuke Miyashita
- 株式会社paperboy&co.
- Dr. Pepper好きな人
- Tシャツも
- Punc
- Funcではなぜだめか
- 動作
- 複数のホストに何かを実行させる
- 問題
- ホストをどう選択するか
- セキュリティをどうするか
- 結果をどうparseするか
- select
- '*'や'www.*'などで選択する
- connect
- 構成
| puncmasterd | マスタ |
| puncd | スレーブ |
| punc | コマンドラインツール |
- マスタがスレーブに命令して,スレーブはモジュールを実行し結果をマスタに返す.
- モジュール
- 抽象化レイヤ
- Pfacter
- puppetのfacterを真似た
- Punc/Func/Puppetの違いは
- puppetは静的でPunc/Funcは動的に情報を取得する
Let's enjoy Perl on the %^H - Kazuhiro Osawa (Yappo)
- YappoLogs
- %^H ... hinthash
- BEGINフェーズで実行される
- perl 5.10では(caller())[10]でhinthashを取得できる
- dan.pm
- コンテキスト(空気)を読まない
- 置換(痴漢)する
- encodingする時にフックをかけることができるらしい
Lightning Talks
String::TT - Jonathan Rockway (jrockway)
- www.jrock.us
- heredocsは便利だけども醜い
- インデントが汚く見える
- TT+heredocs = String::TT
- tt q{...}
- strip tt q{}でインデントしてもスペースを削る
- source filterではなくメソッド
- Sub::Exporter
- 同じ名前のスカラー,配列,ハッシュが存在するが,TTは名前のみ
- remappingする
収支概算を公表します - Hiroyuki Oyama
- MODULE.JP - Apache & Perl Module Information.
- お金☆大好き...何このノリ(w
- ホテル・ダンのおかげで宿泊費が浮きました
- paypalも安くすみそうです
Open Fastladder with Plagger - Daisuke Murase (typester)
- memo - unknownplace.org
- plaggerを使ってbloglinesや社内フィードなどを集めてfastladderでまとめて読む
Everybody wanna know where you belong! - Kenichi Ishigaki (charsbar)
- Charsbar::Note
- CPAN Authors 6650
- Japanese 201
Developing Amazon's Dynamo in POE and Erlang - prologue of "From POE to Erlang" - Takeru INOUE (takemaru)
生Perl (Perl Machine) - Kazunari Asano (wakapon)
- 403 Forbidden
- Perlだけでマシンを作ろう
- この学生ニートすげえ
Text::MicroMason::SafeServerPages - cho45
- テンプレートエンジンいやだ
- 新しい言語を覚えたくない
- erbっぽい埋め込みで
- Text::MicroMason
- Perlのコードを埋め込む
- TTよりも速い
- Text::MicroMason::SafeServerPage
- サニタイズ言うなを実装してみた
- Text::MicroMason > TT
- Tenjin > Text::Micromason > TT
WebService::Simple - Yusuke Wada (yusukebe)
- ゆーすけべー日記
- 最近CPAN Authorになった
- CPANAuthors::Japaneseに追加した
- WebService::Simple
- lestrratに書き換えてもいい?て聞かれてokしたら,ほとんど書き得られてしまった
- あれ?なんかまともな話だったよ
- 404 Not Found - ゆーすけべー日記
Ingyの
- Javascript Love for Perl Hackersの内容と同じだった
prototype::signatures - Chia-liang Kao (clkao)
- Perl6っぽいメソッドのシグネチャをPerl5で実装しようという話
takesakoさんの
- TAKESAKO @ Yet another Cybozu Labs
- HTML1.0
- HTML2.0
- 以下の話と同じだった