Perl 5.14.2とImageMagick/PerlMagickのアップデート

Posted on 2011年12月30日 (金) in articles • Tagged with FreeBSD, PC環境, Perl, Unix

毎年年末年始に帰省しないせいか、いつも休みに入るとサーバー関係の更新作業を行っているのだが、今年は長らく懸案事項となっていたPerlのバージョンアップとImageMagick/PerlMagickのアップデートをやってみることにした。Perlのバージョンアップ自体はたいした作業ではないのでメモレベルなのだが、PerlMagickが異様に難しいので、バイナリパッケージをインストールって言う人は手を出しちゃいけません。

ImageMagick/PerlMagickは最後にうまくビルドできた6.4.1からバージョンを上げることができず、それでいながらMovableTypeでは必須。ということで、今回も懲りずに6.7.4-2にアップデートしてみてから、PerlMagickにトライすることにした。今回の作業をまとめると、いままでPerlMagickがインストールできなかったのは、どうもImageMagickやPerlMagickだけでなく、Perlのコンパイルオプションにも秘密が隠されていた。(おそらくamd64環境で問題になりそうで、x86だと問題ないと思う。) 我が家のOS環境はFreeBSD9.0RC3であるが、OS付属以外のユーザーランドはFreeBSD7環境なので、作業自体はFreeBSD7を導入しているマシンで行い、rsyncでバイナリを同期している。GCC周りで問題もあろうと思うので、いつかの段階でLLVM/Clangに乗り換える必要がありそう。CPANライブラリはMovableTypeが動かせるようにそろえるというこれまで通りの方針で進める。

Perlのインストール

./Configure -Dprefix=/usr/local/perl-5.14 …

Continue reading

2006年04月02日 日曜日

Posted on 2006年04月02日 (日) in articles • Tagged with Equipment, Perl, HTML, Ruby

向井 淳 / 入門Haskell - はじめて学ぶ関数型言語

Perl6-Pugsの登場以来(で正しいと思う)、純粋関数型言語のHaskellが熱いと言うことで、何か良い入門書はない物かと思っていたのだが、なんだか書店の棚を見ていると目にとまったので購入してみた。Haskellも入門書が出る時代になったということで、全く持って素晴らしい。

ただこの本はさらっと読んでみて、さらっとおしまいという感が強く、入門書として_何が何でもHaskell_という押しがないのは事実かも。なんだか説明がちっとも頭に入ってこない。熱意は感じるんだけど空回りしているかなと思うのである。あと入門書を読んでいつも思うのだけど、あとで説明するという言葉はのは書かない方がよいと思う。さらっと書いて知らんぷり(どうせそこでは本質的ではないのだから呪文としちゃうでも良い、たいてい書かなければ気が付かない)をして、あとで説明すればいいと思うのだが、「あとで説明する」と来るとイライラしてしまうのである。

とりあえずおもしろいので、ざくざく読んでいる。手も動かすべく処理系もインストールしたから、ぼちぼち手を付けてみよう。あと青木さんが「ふつうのHaskellプログラミング」を執筆中なので、こっちにも期待したいところ。


2005年11月24日 木曜日

Posted on 2005年11月24日 (木) in articles • Tagged with Excel, TeX, VBA, Perl, Ruby, Network, Equipment

続・なんでもかんでもExcel症候群

Unixな機械からテキストファイルを直接持ってくると、改行がWindowsと異なるので、Excelで扱うのがちょっとめんどくさい。FTPできるときは、ASCIIで持ってくればDOS/Windowsなテキストファイルになるのだけど、世の中FTPできなくて専用のクライアントを共用されることもあって涙が出てくることがもうしょっちゅうあって困る。で、そんな_だめだめクライアント_に泣く泣くつきあわなければならないのだが、この際_なんでもかんでもExcelにお任せ_なのだ。

これからはASCIIモード転送のことは忘れて、すべてBINARYモード転送にしてしまいましょう。DOS/Windowsの世界ではUnixで作成したテキストは何行あっても、_たった1行のテキストファイル_と見なせるから、これを全部1つの文字列に取り込んで、ばらす方向で考える。ソースを示す。

```vbnet TextRead.bas Sub TextRead(FileName As Variant) ' TextReadプロシジャ: FileNameで指定されたファイルを読み込む ' FileName: 入力するファイルのファイル名

Dim RE As Object
Dim StreamString As String
Dim textlines As Object
Dim textline As Object
Dim tmp(2) As String
Dim myDate As Date
Dim PATTERN as String

Set RE = CreateObject("VBScript.RegExp")

With RE
    .Pattern = ".+\n"
    .IgnoreCase = False
    .Global = True
End With

Open FileName For Input As #1
Line Input #1, StreamString
Close #1

Set textlines = RE.Execute(StreamString)

For Each textline In textlines

' textlineはUnixにおける行と同じ。ここに処理したいことを書く

Next

Set RE = Nothing

End Sub

こんなことをやると、textlinesコレクションに入る各要素はUnixで言うところの行の集合、その要素は行と同じ …

Continue reading

2005年11月22日 火曜日

Posted on 2005年11月22日 (火) in articles • Tagged with Excel, Equipment, PowerPoint, XML, Emacs, VBA, Perl, Ruby, Network, PC, C++

なんでもかんでもExcel症候群

何でもかんでもPowerPoint症候群の弊害を日記で書いたのだが、それよりも世の中に広く広まっている病的な物と言えば、_なんでもかんでもExcel症候群_であろう。とにかく通常の表だけに飽きたらず、提出書類から報告書まで_何でもかんでもExcel_なのである。つまり「何でもかんでもExcel症候群」とはExcelだけですべての仕事が完結してしまう恐ろしい病気なのだ。

その病巣の由来を簡単に予想するとすれば、子供の頃に升目の入ったノートで漢字の書き取りをやらされ(つまりカーニングとかに無頓着になる)、読書感想文などの類は原稿用紙で書かされ、漢字は少ない文字数で情報量を詰め込めることからすっきりとした表が書きやすく、何でもかんでも_表にしないと気が済まない_という日本人の悲しい習性に由来する物であろうと思うのだ。

まぁUnixでEmacsしか使わないというのと似たような話ではあるのだが、典型的なEmacsユーザーが扱うのは汎用的なテキストファイルであり、Emacs LISPでがんがんプログラムを書く(設定ですらLISPを書かねばならないので、多少は誰でも書く物だ)人が多い用に思われる。Excelの場合は、XLS形式という特殊なフォーマット(最近のはXMLなのか?)を用い、適当なワークシート関数などを表層的に使いこなしている人が多く、Excelの基本 …


Continue reading

2005年08月27日 土曜日

Posted on 2005年08月27日 (土) in articles • Tagged with Equipment, XML, HTML, Perl, Ruby, Network, Scheme, PC, Physics, Flower, Mathematics

Lightweight Language Day (and Night)

今年もLightweight Languageの年に一度のお祭りであるLightweight Language Day (and Night)に参加してきました。チケットの発売に気がつかなかったので、何とか買えた昼間の部のみ参加。

今年の僕が感じた目玉のひとつ目は、GNU awk(gawk)のXML拡張であるxmlgawkであろうか。僕がgawkやnawkを使っていたのは学部の4年目のころで、あのころは日本語化パッチを当てたjgawkをメインに使っていた。(今にして思うとperlのプログラムも結構書いたけどawkほど使ってないな。) 気がつけば国際化されて、キーワードが増えてXML文書をSAXっぽく扱えるようだ。この拡張はgawkの先端開発版という位置づけで、コンパイルオプションで無効にできるそうだ。awkは行指向ツールとしてはperlやrubyより使いやすいところはあるので、まだ開発が行われていて進化が続いているのかと言う驚きとともに、昔師匠のawkの技でうんざりしてしまいやめてしまったawkであるが、再び遊んでみたいなあと思ったのである。(僕の師匠(指導教官ともいう)はawkとかPostScriptのプログラムをサクサクと・・・)

二つ目は全然追いかけてもいなかったけどPerl6周辺の話。昨年のLLでは北京オリンピック頃と言っていたPerl6であるが、この1年でPerl6のHaskellによる実装(Pugs)を行ったという天才が登場して、突如として開発が加速しているようだ。それにしても1ヶ月でHaskell …


Continue reading

2004年08月08日 日曜日

Posted on 2004年08月08日 (日) in articles • Tagged with Equipment, HTML, XML, Scheme, Ruby, Perl, Excel, VBA

Lightweight Language Weekend 2日目

2日目の前半は最近はやりのblogな話題。僕は基本的に興味がないのだが一応お勉強のため... 大きなblogサイト(Livedoor Blog)やはてなダイアリーなど)の方が来ていたので、個人的には「(政府や各種圧力団体などから圧力がかかりそうな)非常にまずい記事の削除要請があった場合にどのように考えるかの立ち位置」を効きたかったのだが、LLには関係ないし、契約で乗り切れる話かもしれないし、あまりにダークなんで聞けなかった。聞いておけば良かったかな? LLの最も巨大な応用先であることは認めるが、blogだけでこんなに時間を取るんだったら他の話が聞きたかった。

Lightning Talkは詳細はあまり覚えてない。(なんせ半分くらいBitKeeperと話をしていたので。) 平内さんの「木のマッチ」では、Schemeを使用した木構造のデータに対して正規表現みたいなパターンマッチをする話。さくっとXML VallidatorがかけるあたりがSchemeのマクロらしい。久井さんの「Gauche-glによる、3次元図形言語」では、Gauche-GLとストリーム(SICP Chap3の後半)を使ったアニメーションによるプレゼンでGaucheではこんなこともできるのかと言うこともあってこれまた面白かった。

高橋さんの「日本Rubyの会設立」の話は要点とをついたインパクトのあるプレゼンで、こうあるべきかと思ったり... 早川さんの「LL侍」は最初は照れが見えたが、吹っ切れたあと …


Continue reading

2004年08月07日 土曜日

Posted on 2004年08月07日 (土) in articles • Tagged with Equipment, HTML, Ruby, Perl, Scheme, Java, C++, PC

Lightweight Language Weekend 1日目

行ってきました。ざっくりとした的確な要約は、まつもとゆきひろさんのMatzにっきを参照。(こんな手抜きで良いのかな。)

あまりに手抜き過ぎなので、印象深いところをかいつまんで。今回はPerlにしてもRubyにしてもPythonにしても大きな変化がなかった1年なので、逆にマイナーな言語の存在が目立つカンファレンスでした。特に、SchemeやHaskellと言った関数型言語の人が目立ったなぁ。

今回特に面白かったなと思ったのはSchemeの1実装であるGaucheですかね。ここ数年Schemeは忘れ去られていた感がある(入門的な書籍類が全て無くなっていたので)のだけども、国内的にはGaucheのおかげで復権したと考えて良かろう。またどの言語でもキラーアプリがあれば動き出すのであるが、Gaucheは継続ベースのWebアプリケーション・フレームワークであるKahuaが最近広まってきていて、その紹介などがあった。HTMLをさくっとS式で書けるのは良いかもしれない。あとSchemeを勉強していてサッパリ分からないものの一つが継続で、これはいったいなんじゃろ?と言うあたりが今回少し解決した。今日あたりから「何でも継続」を読んで、真面目にSchemeで遊んでみようと思います。SICPでは凄く後のほうに載っていますが、LISPとは根本的に違うScheme特有の概念だと思います。

あとGroovyの話も面白かった。(「Javaの奇妙な冒 …


Continue reading

2004年04月06日 火曜日

Posted on 2004年04月06日 (火) in articles • Tagged with Equipment, Perl, Ruby

エリザベス・ヘイドン / 「ラプソディ -血脈の子-

最近何人かの人に面白いよ〜と宣伝されていたので、電車通勤になった事もあって、久しぶりに長編ファンタシイ小説に手をつける事にした。本当はもっと以前に購入するつもりで目を付けていたのだけど、読む時間が無くて放置していた。今日は購入しただけ。

Lightweight language magazine - ライトな言語でプログラミングを楽しもう!

Lightweight Languageって何だ?と言う話はあるけれど、PerlやpythonやPHPやRubyと言った軽量で抽象度の高い記述ができるインタープリタ言語と言う物が分類されるらしい。本の内容は昨年夏のLightweight Language Studayをまとめた内容と言うところが的確か。内容はある「お題」を出して各言語で書いたらどうなるかとか、先にあげた書く言語の紹介、便利な使い方等が書かれていて面白そうだったと言うところが即買いの理由。まぁじっくり読み込もうと思う。


2004年01月12日 月曜日

Posted on 2004年01月12日 (月) in articles • Tagged with LaTeX, TeX, Equipment, Perl, Mathematics

久しぶりにLaTeXをインストール

広瀬さんの日記にTeXの話題が載っていたので、久しぶりにLaTeXをインストールしてみることにした。まぁLaTeXじゃないと書けそうにない文書はそれなりにたまっていると言うのもあるので、ちょうど良いかというきっかけだった。

ということで、家でもPDFを生成できるようになったのだが、久しぶり(おそらく7年ぶり)にLaTeXを触って思ったのは、_こんな物をよく使いこなしていたな_と思わざるを得ない奇怪なTeXマクロ(まだPerlの方がマシかも)とバッドノウハウとしか思えないソースの断片であった。自分の修士論文のソースを読んでも、よく書いたなというマクロのオンパレードでびっくりなのである。

しかも当時はちゃんとMakefileを書いてmakeしていたようだ。(platex main.texを3回実行するより、makeで一発というあたりを買っていたらしい。) なんだか昔の苦闘のかけらを掘り起こしたような気がする。とりあえず昔のIsing模型の勉強ノートとかこれから手を入れたい光学の勉強ノートとかを書いてみようかなと思う。やっぱり数式はTeXよねと言うあたりをPDFで表現できるかな。


2004年01月11日 日曜日

Posted on 2004年01月11日 (日) in articles • Tagged with Equipment, HTML, Linux, Perl, PC, 数値計算, C++, VBA, BSD

GNUの20年

ずいぶん前の話になるが、昨年はrmsがGNU Projectへの呼びかけ(翻訳,後の「GNU宣言」の元になる文書だと思う)から20年目の年だったそうな。昨年の9月末の話なので何をいまさらという話であるが、1月5日のNewsforgeにrms自身による「The Free Software Community After 20 Years: With great but incomplete success, what now?」という記事(和訳)が掲載されていたので、読んでみて思い出したかのように日記の記事にすることにした。

ソフトウェアにそれなりに踏み込んでつきあうようになると誰でもそうであると思うが、GNUの成果物の恩恵に預かっていることに気づかされることが多い。僕の場合は今年で11年目になると思う。最初の出会いはテキスト処理をするために使い始めたawkであるが、MS-DOSで使っていたので当然GNU版のawkであるgawk(の日本語版jgawk)だったように思う。当時書くのもめんどくさいテキストファイルのフィルタ処理がこんな簡単な言語でできるもんだと感動して使った記憶がある。(その後、awkの使いこなしでは師匠に絶対勝てねえと思ってperlを使うようになりawkを忘れ、今はテキストの処理の需要があまりないのでなんにもやってないが。)

その後、数値計算でCでプログラムを書く機会が多かった(Fortran嫌いなんで)ので、MS-DOSでMS QuickCを使っていた。Cを始めた頃はこの処理系でよかったが、当時積分計算をすることが …


Continue reading