パール木本のPerlテックブログ

世界的プロジェクトに携わるPerlプログラマー「パール木本」のテックブログ。書籍「業務に役立つPerl」,ユーチューバー, 木本システム代表取締役社長。

パール木本のPerlプログラミングちゃんねる 2020年7月3日(金)

www.youtube.comwww.youtube.comwww.youtube.comwww.youtube.com

パール木本のPerlプログラミングちゃんねる 2020年6月27日(土)

配列と繰り返し処理配列とfor文を使った繰り返し処理を解説。正規表現を組み合わせて、複数の文字列を置換するサンプルも紹介。配列と繰り返し処理 - パール木本のPerlプログラミングちゃんねるperl5.32リリース & perl7 発表Perl 5.32がリリースされました…

人々がパワー(権力)に苦しむ時代にPerlは人間的な価値を提供できる

青年「壮大なテーマですね。今回のタイトルは」木本「ふふふっ。」青年「名に笑ってるんですか。」木本「パワー(権力)を使うということに、どんなことを連想します?」青年「うーん、パワハラとかですか。」木本「そうだね。パワーを使って、嫌がらせをすると…

簡易的なC言語/C++ソースファイルの依存関係解決アルゴリズムについて考えている

簡易的なC言語ソースファイルの依存関係解決アルゴリズムについて考えている。コンパイルを毎回繰り返すのは、コンパイルを待つ時間が辛い。そこで、依存関係があるものだけを、コンパイルするというのがMakefileに書くことだ。C言語のソースファイルとオブ…

SPVM 1.0をリリースしちゃう

方針転換、仕様書とドキュメントは完全にできていませんが、SPVM 1.0を7月中には、リリースしちゃう。SPVM 1.0では、完全な後方互換性の維持は、提供されませんが、不合理な理由での、後方互換性の変更は、なるべく、少なくするようにします。ご利用になる方…

SPVMはセキュアなプログラム実行環境を提供できるようにする

SPVMはセキュアなプログラム実行環境を提供できるようにする。セキュアという考え方には、任意のコマンドを実行されてしまったり、ファイルを書き換えられてしまったりする、処理に対してセキュアというのがあります。もう一つは、リソース制限がかからない…

Perl 5.32 リリース - Unicode 13.0, 連鎖比較, isa演算子, sort高速化, trバグ修正

Perl 5.32 がリリースされました。 Unicode 13.0, 連鎖比較, isa演算子, sort高速化, trの255以上のコードポイントを含んでいる場合のバグ修正など。 Perlの開発場所がGithubに移り、Github Actionで自動試験を行っていることも、今回のPerlリリースの特徴で…

パール木本のPerlプログラミングちゃんねる 2020年6月20日(土)

パール木本のPerlプログラミングちゃんねる 2020年6月20日(土)配列関数配列を操作するための配列関数の紹介。push,pop,unshift,shift,splice配列関数 - パール木本のPerlプログラミングちゃんねるLinuxどうやって使い始めるの? Linuxをどうやって使い始める…

PerlのYAML 1.2の解析機 YAML::PPの紹介

PerlのYAML 1.2の解析機 YAML::PPの紹介です。metacpan.orgYAMLは、アプリケーションの設定ファイルとして、2020年、広く利用されつつあるように感じています。YAMLは、コメントが書け、表現力豊かで、インデントで、配列を表現できること、「|」を使って、…

パール木本のPerlプログラミングちゃんねる 2020年6月12日(金)

パール木本のPerlプログラミングちゃんねる 2020年6月12日(金)です。配列の基礎Perlの配列の基礎を解説しました。スカラとリストと配列。要素の取得と設定。配列の長さ。配列の基礎 - パール木本のPerlプログラミングちゃんねるLinuxの共有ライブラリについ…

基本情報処理のプログラミングの試験は、答えを求めるのに、どんなプログラミング言語でもよいようにしたらいいのでは

木本「基本情報処理のプログラミングの試験は、答えを求めるのに、どんなプログラミング言語でもよいようにしたらいいのではと思った」青年「んっ、ということは基本情報技術者試験の電子化ですか? 」木本「まぁ、基本の部分は紙でもいいけどね。プログラミ…

GUIアプリケーションを作るのに最適なプログラミング言語は?

木本「GUIアプリケーションを作るのに最適なプログラミング言語について」青年「GUIというのは、画面が見えるアプリケーションですよね」木本「そうだね、デスクトップアプリケーションとか、ipadのタブレットのアプリケーション、iphoneやandroidのスマート…

MariaDBの新しいバージョンは、デフォルト値の設定が必須の設定になっているようなので、引っ越しのタイミングで修正した

MariaDBの新しいバージョンは、デフォルト値の設定が必須の設定になっているようなので、引っ越しのタイミングで修正する。mysqldumpで、出力したものに、フィールド定義が含まれているので、それを置換。やりたかったことは以下。 すべてのフィールドにデフ…

AI::MXNet::CudaModuleというディープラーニングをNVIDIAのcudaでGPUで行うモジュール

google検索して、うろうろしていたら、たまたまAI::MXNet::CudaModuleというディープラーニングをNVIDIAのcudaでGPUで行うモジュールを発見したので紹介。metacpan.orgAI MXNetは、ディープラーニングを行うためのC++で書かれたライブラリです。スケーリング…

パール木本のPerlプログラミングちゃんねる 2020年6月6日(土)

パール木本のPerlプログラミングちゃんねる 2020年6月6日(土)。論理演算子 その1論理演算子 その1 - 論理和・論理積・論理否定。論理学の命題論理と述語論理との関係。論理演算の組み合わせ論理演算子 その1 - パール木本のPerlプログラミングちゃんねる論理…

Unicode文字をtr演算子で使った場合の「Replacement list is longer than search list」警告は、Perl 5.22で発生して、Perl 5.30で修正される予定

Unicode文字をtr演算子で使った場合の「Replacement list is longer than search list」警告は、Perl 5.22で発生して、Perl 5.30で修正される予定(たぶん)。 $address_str =~ tr/0-9/0-9/; これに対して警告がでる Replacement list is longer than search…

公務員がAIで叩かれていたり、印鑑の協会がITで叩かれていたり、発達障害を持つ人が蔑まれていたり、ネットニュースは物騒なことが多い気がするね

木本「公務員がAIで叩かれていたり、印鑑の協会がITで叩かれていたり、発達障害を持つ人が蔑まれていたり、ネットニュースは物騒なことが多い気がするね。」青年「うーん、なんか正しいことが書かれているような気もするのですが、行き過ぎな感じもしますね…

クラウドサーバーとリアルタイムWeb機能が標準的になる時代におけるPerlの価値

クラウドサーバーとリアルタイムWeb機能が標準的になる時代におけるPerlの価値。「リアルタイムWebしたいなぁ。動画配信、ストリーミング、push通知、リアルタイムチャット、リアルタイム更新」「ノンブロッキングHTTPリクエストを外部のサービスのRest API…

GitPrepへの要望とバグフィックス依頼が意外に多いので、GitPrepの機能改善と集中メンテナンスを行う

GitPrepへの要望とバグフィックス依頼が意外に多いので、GitPrepの機能改善と集中メンテナンスを行います。github.comGitPrepは、CGIのレンタルサーバーでも実行可能なGitHub-likeなWebアプリケーションです。perlcodesample.sakura.ne.jpデータベースには、…

パンくずリストを複数のHTMLファイルの先頭に挿入するPerlワンライナー

パンくずリストを複数のHTMLファイルの先頭に挿入するPerlワンライナーを作成しました。(ワンライナーというよりマルチライナーだけどね)。パンくずリスト以外でも、活用できます。 cat <<EOS | xargs perl -pi -0 -e ' use strict; use warnings; use File::Basename q(basename); my $add = q(<div class="bread"> <ul itemscope itemtype="http://schema.org/BreadcrumbList"> </ul></eos>

パール木本のPerlプログラミングちゃんねる 2020年5月28日(木)

パール木本のPerlプログラミングちゃんねる 2020年5月28日(木)。今週は、土曜日に撮影ができなくなったので、本日撮影。Perlの真偽値Perlの真偽値を解説。数値の0、文字列で0と等しいもの、空文字列、undef、空のリストが偽と判定され、それ以外は、真。ブー…

Perlを使って複数行の文字列を変数展開を抑止してでsudoでリダイレクトする方法

Perlを使って複数行の文字列を変数展開を抑止してでsudoでリダイレクトする方法Ubuntuに移動して、sudo生活に移ったのですが、複数行文字列をそのまま変数展開せず、リダイレクトを実現することが、難しかったのですが、ようやく発見したので公開します。 su…

Ubuntu 18ではApacheの設定ファイルがgitで管理・自動化しやすいディレクトリ構造になっている

Ubuntu 18ではApacheの設定ファイルがgitで管理・自動化しやすいディレクトリ構造になっているので紹介。Apacheの設定ファイルのディレクトリの構成というのは、どんどん変わってきたのですが、どういう方向性に向かって、変わってきたと感じているか。 apac…

権力に頼らなくても選ばれる品質を目指す

青年「また何か考えていますか」木本「うん、権力に頼らなくても選ばれる品質を目指す」青「えーっと、よくわかりません。」木「品質を目指すのか、権力を目指すのか、ということ」青「品質というのは、その商品自体が持っている価値ということですか?」木「…

Azureのようなパブリッククラウドでも、ディスクのマウント作業は通常のLinuxなのね

Azureのようなパブリッククラウドでは、ディスクを、アタッチするところまでは、GUIでできるけど、それ以降は、通常のLinuxのマウント作業をするということなのね。ディスクに関しては、オートスケールではないのね。論理ボリュームとか理解しとかないといけ…

AzureのMariaDBでタイムゾーンを日本時間にするメモ

AzureのMariaDBでタイムゾーンを日本時間にするメモ。サーバーパラメータののtime_zoneをAsia/Tokyoに設定できない。UTCからの時刻の差分で指定しなければいけないようだ。 09:00

RedisとMojo::UserAgentを使ったpush通知、リアルタイムチャットの実装の流れ

RedisとMojo::UserAgentを使ったpush通知、リアルタイムチャットの実装の流れを思いついたのでここに書き記す。RedisのPub/Sub機能Redisは、Pub/Subという機能を持っていますが、これはPublish/Subscriptionという意味です。日本語だと、発行/購読という意味…

2025年エンジニアは不足しますか?

青年「2025年になるとエンジニア不足の限界がやってくるようですね」木本「そうなの?」青「え、なんかそんなこと書いてあった気がしますけど」木「まぁ、あれは、そのー、あおってるのかもよ」青「じゃぁ、ほんとは、どうなると思います?」木「うーん、人が…

パール木本のPerlプログラミングちゃんねる 2020年5月22日(金)

パール木本のPerlプログラミングちゃんねる 2020年5月22日(金)。文字列比較演算子Perlの文字列比較演算。辞書順比較について解説。eq, gt, gt, gl, lt, le。if文と文字列比較演算子を組み合わせて、どちらが実行されるか。文字列比較演算子 - パール木本のPe…

Module::Build::Tinyはインストールが軽い

Module::Build::Tinyはインストールが軽い。metacpan.orgModule::Installが非推奨、Module::Buildはコアではなくなったので、軽いModule::Build::Tinyが、少ない変更で、代替してくれるのはありがたいねぇ。ExtUtils::MakeMakerはデフォルト、柔軟でModule::…