Perl
久々に Perl 書いた #! /usr/bin/perl use strict; use warnings; use utf8; use DBI; use HTTP::Date; use Net::Twitter; use File::Basename; use Data::Dumper; use Config::Pit; my $config = pit_get('twitter.com'); my $dbh = DBI->connect('dbi:SQLi…
はてなブックマークの Web Hook というのがリリースされましたね! (開発者さま向け) はてなブックマーク Web Hook 機能を公開しました - はてなブックマーク日記 - 機能変更、お知らせなど はてなブックマーク Web Hookとは - はてなキーワード これを設定…
Win32::Console::Ansi をインストールしておけばいいみたいです。 > cpan -i App::Ack > cpan -i Win32::Console::ANSI
参考にしたサイト集 perlxs - perldoc.perl.org perlxstut - perldoc.perl.org perlguts - perldoc.perl.org perlapi - perldoc.perl.org http://d.hatena.ne.jp/tokuhirom/20081209/1228829454 Perl XS メモ - typemap と MAGIC をからめて - daily dayflow…
はじめに http://perl-users.jp で JPerl Advent Calendar 2008 という企画をやっていて、 Perl ハッカー達が毎日バトン形式で記事を書いています。 そしてついに、僕にも id:kazuhooku さんからバトンが回ってきたので、頑張って書きました><! 記事は以…
昨日の夜、つまづいてたところ。 ちょこっと試してみたら普通に動いた 貼っておきます。ペタ sub MouseClickToolbar { my $toolbar = shift; my $id_target = shift; my $tbb_buf = AllocateVirtualBuffer($win, 24); my $count = SendMessage($toolbar1, 0x…
はじめに 久々の perl。突っ込まれるのを期待しつつやってみます。 準備 Strawberry Perl for Windows をインストール PATH を通して、コマンドプロンプトを起動して、 > cpan -i Win32::GuiTestでおk。 何から始めよう IE8 をどこまで操作できるかやってみ…
HTTP::Session::Store::DBM の insert で 以下のように、 sub insert { my ( $self, $key, $value ) = @_; defined(tied %{ $self->{dbm} }); # => false になる場合がある $self->dbm->{$key} = Storable::freeze $value; } $self->{dbm} に tie されたオブ…
Perl-users.jp は Perl のプログラミング初心者にもやさしい Perl のハブサイトです! みなさん、ガンガン使いましょう!
書いたので共有しときます。 ソース汚いです><誰か、直して>< http://svn.coderepos.org/share/lang/perl/misc/ust_smile_util.pl 使い方 コマンドみたいになってるので、以下のような感じで実行してください $ perl ust_smile_util.pl Username: hogeho…
以下のようなことで困っていました あるモジュールを入れるときに、 Makefile.PL に引数を渡してあげなければならない。 $ perl Makefile.PL INC=-I/俺の/includeでも、 cpan コマンドでやると全自動でやっちゃうので Makefile.PL に直接引数を渡せない で、…
-t STDIN $ perl -e "print -t STDIN\n" 1 $ perl -e "print -t STDIN\n" < hoge.txt $
id:TAKESAKO さんに教えて貰った。 () = func;
ここを参考にして http://d.hatena.ne.jp/tokuhirom/20080418/1208503547 use overload を使ってみた package Acme::JS::Arguments; use strict; use warnings; use Devel::Caller qw(caller_args); use Exporter; our @ISA = qw(Exporter); our @EXPORT = q…
ネタは はじめての coderepos で arguments::callee 初体験 - TAKESAKOのはてな出張所 のパクリで、でも XS 書けないので中で Devel::Caller 使ってます。 arguments で引数配列のリファレンスが帰ってくる arguments->callee で自分自身のコードリファレン…
こんなことを書いていたら Perl で JS の arguments.callee 的なことしようと思ってハマった - IT戦記 さっそく教えて貰えた>< http://d.hatena.ne.jp/tokuhirom/20080501/1209625789 ありがとうございます! さっそく使ってみた! 以下のコードを # test.…
JavaScript では arguments.callee を使うと以下のように無名関数の再帰が書ける (function(c) { if (c == undeinfed) c = 10; console.log(c); if (c--) arguments.callee(c); }); Perl で そういうことをやる方法を知らないので do { my $c = 10; my $call…
以下のエントリを読んで これからPerlやろうかなーとか思ってる人へ - Yet Another Hackadelic これは本当にすごいと思いました Perl やろうよ! みんな Perl (も)やろうよ! けっこう、いろんなツールやスクリプトとかって Perl で書かれてるんだよ! だ…
MacPorts で SpiderMonkey を入れた場合は、以下の位置にライブラリファイルとインクルードファイルがあります。 /opt/local/lib/* /opt/local/include/*なので、 JavaScript::SpiderMonkey をインストールする際には、 Makefile.PL の 38 行目あたりを以下…
検索→検索って感じで絞り込んでいく感じでおもしろい
(追記)このエントリーは間違いが含まれます。 y 関数は y コンビネータではなくて、他の用途の組み込み関数を上書きして autobox でそういう風に使っているという話でした。 Perl の y 関数 http://d.hatena.ne.jp/tokuhirom/20080205/1202191116 Perl に…
刺身さんお久しぶりです^^; Re: 再帰?は難しい - 刺身☆ブーメランのはてなダイアリー local を使ってこんな再帰はどうでしょうか?^^; local なのでグローバル変数を再帰のスタック上でしか書き換えないので、比較的安心です。 use strict; use Data::…
local と my - IT戦記の続き local と my の違いが分かるサンプルを書いてみた our $foo = 0; do { # ... (1) local $foo = 1; do { print "$foo\n" }; # 1 sub { print "$foo\n" } # 0 }->(); do { # ... (2) my $foo = 1; do { print "$foo\n" }; # 1 sub …
すっきりした>< - 宇宙行きたい このエントリの our 名前をスコープに限定. local 値をスコープに限定. my 名前と値の両方をスコープに限定 は、ものすごく分かりやすいし正しいと思うんですけど、たぶん昔の僕だったら理解出来なかったかもしれません><…
Mac で App::Ack を使ってみたら白黒だった。 原因は App::Ack::is_interactive が false になるのがダメっぽいんだけど。 ソース読んでみても、逆にこれが true になる条件がよくわかりません>< で、場当たり的な対処 export ACK_OPTIONS="--color --grou…
上司の id:ZIGOROu はんが出るみたいなので、初めて聞きに行ってみます ^^ それにしても、今回も 30 分程度で埋まってしまったようですね。取れてよかった。あと、 JavaScripter としては樋口さんの話が楽しみです。ワクテカ Shibuya.pm Technical Talk #7 http:…
ダイナミックスコープがない言語では 再帰呼び出しのスタック間でデータを共有する場合は、以下のように仮引数を使わなければならない。*1 JavaScript で木構造の探索をして、依存関係を直列に並べる例 function search(node, results, seen) { if(!results)…
Class::C3 を使うと継承順がかなりセンシティブになる。 たとえば、普段から Class::Accessor::Fast と Class::Data::Inheritable を同時に継承する場合にどちらが先かというのは、そんなに意識しないと思います。(僕はしません) でも、Class::C3 を使う場合…
既存 DB から以下のワンライナー一発で DBIx::Class の Schema が生成できる $ perl -MDBIx::Class::Schema::Loader=make_schema_at,dump_to_dir:./lib -e 'make_schema_at "Hoge::Schema", {relationships => 1, debug => 1}, ["dbi:mysql:hoge","user","pa…
DBIx::Class を少し使ったことがあったので Class::C3 をなんとなくで理解していたんです。(ふーん幅優先版の NEXT モジュールでしょ?みたいな感じで。) でも、これは絶対にちゃんと細かい挙動まで勉強しといたほうがいいと思いました。 多重継承とか mix…