2011-04-01から1ヶ月間の記事一覧

エディタが自動で削除した行末の空白以外の修正を git addする

git

[緩募] gitでdiff -b相当のaddをしたい。つまり、エディタが勝手に実施したホワイトスペースの変更をcommit logに含めたくない。2011-04-24 09:22:22 via Tween これを見たとき、あるあるって思ったので実現のためのコードを書いてみました。今まではこのこ…

ランダム Cプログラムジェネレータ Csmith

はじめに ランダム Cプログラムジェネレータ Csmithの紹介.http://embed.cs.utah.edu/csmith/ コンパイラのテストでランダムテストは効果的であるというのが 昔から言われていまして、いくつかその手のものがあるのですが、 Csmithは GCCや llvm-clangで多く…

常に一定の余裕・ゆとりを持つ

はじめに このエントリは新卒準備カレンダー 2011春 : ATNDの 46日目の記事です。 わりとえらそうに書いているかもしれないですが、ここに書いていることを 私は完全に実践できているわけではありません。自分への言い聞かせも含め書きます。 お前、誰よ? …

PSプリンタで印刷するためのスクリプト

会社で GUI経由だと印刷できないんだけど、コマンドライン経由だと 印刷できることが最近分かりました。でも lp、 lprってオプションが 覚えられないのでそのためのユーティリティ。両面印刷と集約印刷、プリント枚数ぐらいしかいじらないのでそれのみの対応…

pcc(Portable C Compiler)のバグ

はじめに pcc(Portable C Compiler)の 1.0.0がリリースされたということで testgenを使ってテストしてみたんですが、 float周りのテストがえらくこけるなってことでその原因を調べました。 その経緯について記します。 環境 Ubuntu 10.10(32bit) pcc1.0.0, p…

環境変数を設定する elispの生成

Emacsにシェルで使っている環境変数を設定したい。 主に perlbrew関連なんですけど。シェルから Emacsを起動したらそれで 解決なんですけど、どうもシェルから起動すると意味もないのに ミニバッファにフォーカスが移るということが多発しました。 なので 環…

Twitterやってる AV女優を調べる

ブログ以外にもTwitterやってる人も多いよね、ということでコードを書いた。 情報を集めさせていただいたサイトでは onclick経由で該当のサイトに飛ぶんだけど、 Web::Scraperの場合 'onclick'であっても, 'onClick'と書かないといけませんでした。 注意はそ…

Perlで学ぶ「詳解 UNIXプログラミング」(その8) 第8章 プロセス制御

はじめに 「詳解 UNIXプログラミング」の第八章を示します。 本家 http://d.hatena.ne.jp/atsuoishimoto/20110324/1300933805 8.1 fork関数の例 forkでは親プロセスと子プロセスのメモリ空間が異なるため グローバル変数も共有しません。これはマルチスレッ…

Perlで学ぶ「詳解 UNIXプログラミング」(その9) 第9章 プロセスの関係

はじめに 「詳解 UNIXプログラミング」の第九章を示します。 9.1 オーファンドプロセスグループの作成 オーファンドとは親のいない状態という意味のようです。 #!/usr/bin/env perl use strict; use warnings; use POSIX; # オーファンドプロセスグループの…

「CPANモジュールガイド」感想

CPANモジュールガイドを読了しました. 個人的には Encodeの説明に載っていた Perlの"文字列"とバイト列の説明は とてもよかったです。理解が中途半端だったんですけど、おかげで理解できました。 中級者はより理解を深めるために、初心者はこんなことできる…

無線インタフェースの IPが 10.42.43.1になったときの対処

関西 Emacs勉強会の準備をしていたときからえらく頻発していたの ですが、なぜか無線で IPを取ろうとすると 10.42.43.1しか取れません。 こんな感じに。送信者 blog この IPでググると結構いろんな人がトラブルに遭遇しているみたいでした。 でもどれを読ん…

Perlで学ぶ「詳解 UNIXプログラミング」(その7) 第7章 プロセスの環境

はじめに 「詳解 UNIXプログラミング」の第七章を示します。 本家 http://d.hatena.ne.jp/atsuoishimoto/20110322/1300757335 7.1 終了ハンドラの例 Perlには atexitはなく、ENDブロックを使います。 #!/usr/bin/env perl use strict; use warnings; # 終了…

Perlで学ぶ「詳解 UNIXプログラミング」(その6) 第6章 システムデータファイルと情報

はじめに 「詳解 UNIXプログラミング」の第六章を示します。 本家 http://d.hatena.ne.jp/atsuoishimoto/20110318/1300407363 6.1 getpwnam関数 getpwnamは/etc/passwdの内容を取得する関数なのですが、 Perlでの仕様がよくわからない。普通は 7つしかフィー…

Perlで学ぶ「詳解 UNIXプログラミング」(その5) 第5章 標準入出力ライブラリ

はじめに 「詳解 UNIXプログラミング」の第五章を示します。 本家 http://d.hatena.ne.jp/atsuoishimoto/20110317/1300328961 5.1 getc()とputc()を用いて標準出力へコピーする 1章あたりでも書いた気がするけど。 Perlでは putcがありませんので、printを使…

Perlで学ぶ「詳解 UNIXプログラミング」(その3) 第3章 ファイル入出力

はじめに 「詳解 UNIXプログラミング」の第三章を示します。 本家 http://d.hatena.ne.jp/atsuoishimoto/20110310/1299715993 3-1標準入力ファイルがシーク可能で有るかどうかを調べる POSIX::lseekが使えます。 #!/usr/bin/env perl use strict; use warnin…

Perlで学ぶ「詳解 UNIXプログラミング」(その4) 第4章 ファイルとディレクトリ

はじめに 「詳解 UNIXプログラミング」の第四章を示します。 本家 http://d.hatena.ne.jp/atsuoishimoto/20110315/1300142354 4.1 指定したファイルの種類を出力する もっと種類は調べられますが、Python版に合わせています。 詳しくは "man 2 stat"等を参照…

Perlで学ぶ「詳解 UNIXプログラミング」(その2) 第2章 UNIXの標準化と実装

はじめに 「詳解 UNIXプログラミング」の第二章を示します。 本家 http://d.hatena.ne.jp/atsuoishimoto/20110309/1299631166 2.1sysconfとpathconfの定義値を出力する Perlでは Pythonの os.sysconf_namesとos.pathconf_nameのようなものがない ので、C言語…

perlで学ぶ「詳解 UNIXプログラミング」(その1) 第1章 概論

はじめに 「詳解 UNIXプログラミング」の第一章を示します。 本家 http://d.hatena.ne.jp/atsuoishimoto/20110307/1299456377 1.1 ディレクトリ内の全てのファイルをリストする opendirと readdirで実現できます。 #!/usr/bin/env perl use strict; use warn…

Perlで学ぶ「詳解 UNIXプログラミング」(その0)

初めに id:atsuoishimotoさんのPythonで学ぶ「詳解 UNIXプログラミング」シリーズで Perlで書いたらどうなるかというのがあれば面白いんじゃないかなと思って書きます。 本は一応持っているのですが、全然読めてないので、 コードは id:atsuoishimotoさんが…