hkoba blog

プログラマーです。プログラミング言語ミーハーです。ツッコミ歓迎です。よろしくどうぞ(能代口調)

perl

Rust の libperl-sys で XS を書いてみた

この記事は Perl Advent Calendar 2025 の21日目です。(穴埋め記事だよ!) Perl5 のランタイムライブラリである libperl を Rust から呼ぶための、 libperl-sys という crate があります。(README すら書いてなくてごめんなさい) 今の libperl-sys は生…

Claude Code に Devel::Cover を解読してもらったらこんな感じ

この記事は Perl Advent Calendar 2025 の20日目です。(穴埋め記事だよ!) Devel::Cover は Perl の実行の様子を記録して解析するためのパッケージです。典型的にはテストのカバレッジ(テスト漏れがないかを調べる)ために使われます。詳しくは →こちらの…

Claude Code は OO Modulino (オゥオゥ・モジュリーノ)も理解してくれる、ぽい!

AIに最初からテストファイルを書かれても、あまり嬉しくない OO Modulino を教えてみた (余談)TDD と OO Modulino 、目的は同じかも?? まとめ この記事は Perl Advent Calendar 2025 の2日目です。 それは6月の初旬、Claude Code で Perl がどこまで戦え…

Plack middleware 書く時もJSON指向のOOモジュリーノが便利ですよ〜

この記事は Perl Advent Calendar 2024 の 20日目の記事です。 こんにちは、Perl でモジュリーノ書くようになって四半世紀の hkoba です。最近は艦これアーケードのレイテ後編イベントが熱いです。 さて皆さんは Plack の middleware を開発する時、どのよう…

zsh 上で .pm のメソッド名を補完する話

この記事は Perl Advent Calendar 2020 の 12/3 の記事です。 想定読者は、自分で Perl のモジュールを書く機会が有り、かつそのモジュールのメソッドをコマンド行からさっと試したい! と思ったことの有る人です。 Perlモジュール(.pm ファイル)を実行可…

Modulino + OOPの提案 - CLIからオブジェクトと遊ぼう

この記事は *.pm による Perl のクラス定義を CLI から直接的に試せるようにする開発技法の提案・解説です。 はじめに 復習: Modulino(モジュリーノ) とは OOP なモジュールの unless caller には何を書くと便利か サブコマンドをメソッドに posix long オ…

libperl-rs の話

Rustだからカニを貼ってみた 昨年2019の夏頃から libperl-rs というライブラリを作っています(現状では仕事とは無関係の、純然たる自宅研究です。進みも間欠的です)。これは Perl5 のランタイムライブラリーである libperl を Rust から呼び出すためのラッ…

-nle と .pm から始める Perl 入門とかどうかしら?(前編)

-nle と .pm から始める Perl 入門とかどうかしら?(前編) この記事は Perl Advent Calendar 2019 の 12/4 の記事です。内容は主に職場で Perl を 教える側 の人に向けた提案です。 (今から仕事で Perl を学び始める人は、多分 Linux/Unix 環境に関わる人…

五反田pm#19 楽しかったです〜

五反田pm#19 に参加してしてきました。 gotanda-pm.connpass.com 感想あれこれ @kfly8 さんと運営の皆様お疲れ様でした! 最近では珍しく Perl の濃い話を全力で話してもドン引きされるどころか喜ばれる会で、とても有難かったです。 懇親会のお酒とお寿司も…

perldebugger (perl -d) を楽に使うコツ的な話

この記事は Perl Advent Calendar 2018 の 12/4 の記事です Perl Debugger (perl -d) を効率的に使うコツ的な話を書きます。 perl の標準デバッガなんて役に立たないと思っている人のための記事です。 TL;DR step/next は最低限に。break したい個所が予め決…

"--name <SPC> value" style options considered harmful for end-user scripting.

追記20170914朝JST: 以下の議論では簡単のため --name value に話を絞り -o VALUE 形式への言及を省略したが、後者においても辞書が必要となる点は変わらない。自明とは思うが念の為… 20170914昼JST: タイトルtypo 修正 >< ストーリー 以前あなたはプログラ…

『実行可能なモジュール』設計パターンについて…あるいはサブコマンドを持つコマンドを私はどう作るか

『実行可能なモジュール』と私が勝手に呼んでいる、ある種の設計パターン/コーディングイディオムについて、 私なりの意見を整理しておこうと思います。 (この設計パターンは Perl 以外の言語でもよく見かけるので、既に名前が付いているのでは?と予想して…

とある方のブログでみたスクリプトが、なぜ暴走したのかについて

Twitter で流れてきたリンクで、Perl を勉強中の方のブログが目に止まりました。 note103.hateblo.jp 読んでいて気付いた点があったので、それについて書いてみます。 (最初はコメントで書いていたら文字数制限で途切れてしまったので… 途切れるなら字数制…

SQLite でも列名を生成する時の quote には backtick (`) を使ったほうが良いぽい気がしてきた

軽くハマったのでメモ。 まずは実験用のテーブル tab1 を作ります。(中身は空のままにします) sqlite> create table tab1(foo, bar); sqlite> select * from tab1; sqlite> select * from tab1 where foo = 3; sqlite> 次に、意図的に列名を打ち間違って入れ…