(1)はこちら、(2)はこちらから。 Perl 5.26で新たに追加されたもの このように非互換性の話ばかりしているとPerl 5.26へのアップグレードをためらう声も出てきそうですが、Perl 5.26にはセキュリティ上のメリットだけでなく、性能的なメリットや便利な新機能などもあります。 インデント付きヒアドキュメント ある程度まとまった分量の、特に複数行にわたる文字列を扱いたい場合は、ヒアドキュメントを利用するのが定番です。
前回の(1)はこちらから。 encodingプラグマの仕様変更とその対策 Perl 5.26には、ほかにも古いバージョンのPerlからアップグレードするとエラーになる変更がいくつかあります。encodingプラグマの仕様変更もその一つです。 従来はencodingプラグマにエンコーディングを渡しておけば、UTF-8以外の文字コードで書かれたモジュールやライブラリでも適切にPerlの内部表現に変換されていました。 # 日本語Windows環境でShift_JISのままコードを書いても、 # encodingを使えば正規表現などを正しく扱えた use encoding "cp932"; my $string = "表示"; $string =~ s/表/掲/; # プラグマなしだと5C問題[6]でエラー print length($string); # 2 この挙動はPerl 5.22で廃止対
2020年度から始まったオンライン開催のPerl入学式、そして2020年度以降の日本各地で開催されるPerl入学式のイベントは、新しいグループ https://perl-entrance.connpass.com/ で公開することになりました。現在開催中のイベントはそちらを参照下さい。 「プログラミングに興味があるけど, ちょっと難しそう...」と思っている貴方! 「他の言語使いだけど, ちょっとPerlも使ってみよっかな?」と思っている貴方! 「仕事や研究でPerlを使い始めたけど, ちょっと自信ないな...」と思っている貴方! 「プログラミング未経験者」から「Perl初心者」を対象としたワークショップ, 「Perl入学式」で一緒にPerlで学びましょう! プログラミングの「プ」の字も知らないあなたでも大丈夫. 経験豊富な講師とサポーターが, あなたの学びを全力でサポートします. さあ,
どうもこんばんわ、日々お世話になったり、便利だと感じたOSSを紹介していく、OSS紹介 Advent Calenderの21日目の記事です。 GitDDLとは あるDBスキーマから別のDBスキーマに変更を行う際(=migration)を行う時に使うCPANモジュール Railsなどのmigrationとは違ったアプローチで行う 中に使われている魔法のようなモジュールSQL::Translator::Diffの紹介もします DB migrationとは MySQLなどのRDBMSを用いたアプリケーションを運用していくと、「新しくテーブルを追加したい」「カラムを増やしたい」「インデックスを足したい」などの場面に遭遇することがあります。テーブルを追加するだけであれば、新しくCREATE文を発行するだけで良いのですが、カラムを増やしたいだとかインデックスを足したいとなると、ALTER文を打たなけれ
要約 Perlのテストを複数台のサーバに分散させて実行させるためのモジュール、App::Ikarosを用いて拡張可能な高速CI環境を作れたのでハッピーというお話です。 さらにApp::IkarosはJenkinsで読み込ませる用の出力を吐いてくれるので結果がきれいに可視化できる点もグッドです。 実際に導入した経験をハマりどころなど含めて簡単に紹介します。 フルテストが遅い? 我々はPerl使いなので App::Ikarosがあるじゃないか! App::Ikarosはどういうときに使うのか? 本モジュールが適しているのは以下のような場合です テストの数がとにかく多すぎて、一台のテスト実行サーバだと限界がある forkproveを使って高速化したいのだけれど、一部どうしても失敗するテストがあって、全部に対しては適用できない App::Ikaros解説ドキュメントより 基本的な使い方については上
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事はPerl Advent Calendar 2017の19日目の記事です。昨日、18日は@take_3さんによる「VSCodeでPerlデバッグ」でした。VSCode、ずっと興味が有るんですが、なかなか使ってないので、そろそろ使ってみようかと思いました。 本日19日目は、吉祥寺.pmというPerlの(?)イベントを定期的に開催していますMagnolia.Kがお送りします。 今日のネタは本当は22日に予定していたものだったのですが、19日用のネタがなかなか書き進まなかったので、今日公開します。 題して、「Plackコードリーディン
PerlでLDAPアクセス。 #!/usr/bin/perl use strict; use warnings; use Net::LDAP; my $argv = shift; die "usage: $0 args\n" unless (defined $argv); my $ldap_srv = 'localhost'; my $ldap_port = '389'; my $dn = 'cn=Manager, dc=my-domain, dc=com'; my $dn_pass = 'password'; my $ldap = Net::LDAP->new($ldap_srv, port => $ldap_port) or die $!; my $mesg = $ldap->bind( $dn, password => $dn_pass, ); $mesg = $ldap->sear
これはPerl Advent Calender 2017 20日目の記事です。 広告 YAPC::Okinawaは現在,カンファレンス参加チケット・トークプロポーザルを絶賛募集中です! yapcjapan.org この広告は,90日以上更新されていないブログにのみなんちゃらかんちゃr はじめに 普段は南の島の大学の4年生やってます。絶賛卒業研kうっ...頭が..(ノートはここで途切れているようだ...) よくバイトや研究をしていて,作業の開始時間と終了時間を簡単に記録できたらいいななんて思うことがありました。 Terminalで簡単に管理できる作業時間ツールでも作るか,と意気込んでいたその時。 タイミングよく友人がShell Scriptでそのツールを書いていたので,勉強がてらそれをPerlに書き直すことにしようと決めました(┐「ε:) 友人の作成した作業時間管理ツールがこちら。 gith
Perl のクラスって個性的ですね!(生で見えるオブジェクト指向) はじめに 2015年03月08日の初回投稿なので久々の更新です。そして、内容がプアだったので全面改訂です。自分は、Perl の猛者という訳でもないので、誤りなどがあったら指摘していただくとうれしいです。それに、わかりやすさを優先にしているので、正確でないところがあるかもしれません。 Perl で OOP (Object Oriented Programming) する意味 現在よく使われている Perl 5.x は Ruby などに比べると古い言語なので、元々 OO (Object Oriented) 機能はありませんでした。OO 機能は後付けであり、便利な構文などはありません。そのため、現代的なプログラミング言語として Perl 6 が開発されましたが、Perl 5.x と互換性がないため普及していません。 そもそも P
YAPC::Okinawa 2018のトークの応募の締め切りは12/28(木)までのようです。お忘れなく。 申し込みは、タイトル1行と、概要を複数行でよい感じです。 僕も、先日トークの締め切り日に気づき、本日トークに申し込みました。受かるといいな。 YAPC::Okinawa 2018 ONNASON スピーカー募集 YAPC::Asiaが北海道でリブートし、関西で盛り上がり、夏の福岡を経て遂に沖縄にやってきます! この YAPC::Okinawa 2018 ONNASON のスピーカーを募集します(LTは別途募集します)。 応募の締め切りは 12/28(木) 24:00 です! YAPCはYet Another Perl Conferenceの略で、Perlを軸としたITに関わる全ての人のためのカンファレンスです。 Perlだけにとどまらない多様な分野のトークセッションを通じ、情報交換や
YAPC::Asiaが北海道でリブートし、関西で盛り上がり、夏の福岡を経て遂に沖縄にやってきます! この YAPC::Okinawa 2018 ONNASON のスピーカーを募集します(LTは別途募集します)。 応募の締め切りは 12/28(木) 24:00 です! http://yapcjapan.org/2018okinawa/ YAPCはYet Another Perl Conferenceの略で、Perlを軸としたITに関わる全ての人のためのカンファレンスです。 Perlだけにとどまらない多様な分野のトークセッションを通じ、情報交換や交流を行っていただくことで、JPAのミッションである「日本におけるPerlコミュニティを脈々と続くものとして」盛り上げていくことが目標です。 今回のYAPC::Okinawaは、架け橋を意味する「万国津梁」をテーマに掲げて開催します。 皆さま、こぞって
本連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーはcharsbarこと石垣憲一さんで、テーマは「Perl 5.26で変わること」です。 Perl 5.26リリース 去る2017年5月30日にPerl 5.26がリリースされました。これは1987年にPerl 1.0が生まれてから30年、モダンPerl運動のきっかけとなったPerl 5.10が2007年に生まれてから10年という節目のリリースです。2016年春に新たにパンプキン[1]に就任したSawyer X氏のリードのもとでリリースされる最初の安定版[2]でもあります。 Perl 5はかれこれ20年以上も同じメジャーバージョンを使い続けていることからも察せられるように、後方互換性が比較的よく保たれている言語です。それでも、節目節目では新機能の追加とともに多かれ少なかれ互換性が失われるような変更が行われてきました
この記事は,東京大学航空宇宙工学科/専攻 Advent Calendar 2017向けの記事です. Perl生誕30周年おめでとーー! Perlってこんな言語だよ! Perlってとってもいい言語だよ! Perler増えないかなぁ.... トップ画像の出典はこちら. 1.Perl生誕30周年! 2017年12月18日は,Perl生誕30周年記念日です. いやぁ,めでたい. Perl,一番好きなプログラミング言語なんですよね. このホームページ/ブログシステムは全てフルスクラッチの自作だけれども,サーバーサイドはすべてPerl/CGIで動いています. せっかくの生誕30周年記念日なので何か書きたいけど,文法解説したところでつまらない. まあ適当にPerlの好きなところとか書いておきますかね. 手始めに,あまりにも有名な一節をより引用しておこう. Perlを単に好きな人にとっては,それは「実用デ
Perl入学式アドベントカレンダー18日目の記事です。 Perl入学式を受講していた初心者がYAPCにトークを応募し、採択された時の事についての記事です。 まずは前提となる簡単な自己紹介です。 2012年Perl入学式に受講生として参加。 Perl入学式卒業後、2013年からはサポーターとして参加。 YAPC::Kansai2017Osakaコアスタッフをしました。 社会人ですが、エンジニアではありません。 そして、YAPC::Fukuoka2017HakataでPerl入学式卒業生として始めてトークをしてきました。(その時の様子ブログ) アイデア出し YAPCのトークに応募したい!と考えて最初にする事は、何を話すかを決めることですね。話すネタは沢山ある!という方は大丈夫だと思いますが、私はとにかくアイデアを色々出してみました。とにかく思いつく事をノートにたくさん書き出しました。 アイデア
みなさん!Perlつかってますか! ぼくは日常的に使ってます。 さて、PerlはCPANモジュールを駆使して適切な設計さえ行えば、大規模なWebアプリも構築できるほどパワフルな言語ではありますが、その本領はやはりコマンドラインツールやスクリプトとしての使われ方でしょう。 今回はコマンドラインツールとしてのperlの使い方を簡単に紹介します。 コマンドラインツール 多くのコマンドラインツールにはGNU系とBSD系の異なる実装が存在します。 たとえば、文字列置換によく使うsedはBSD系とGNU系でちょっとオプションが異なったりしますよね。 perlはsedやgrepの代替としても使うことができるわけですが、perlでそれら代替する最大の利点はOSが異なっても同じインターフェイスで扱えることでしょう。 一度覚えて手癖にしてしまえば急場でもOSの違いを気にせずにサッとログをまとめたりCSVなどを
この記事はPerl Advent Calendar 2017 16日目の記事です。 日本でもエンジニア界隈ではしっかりお馴染みとなったAdvent Calendarですが、実は英語の Perl Advent Calendarが最も古いAdvent Calendarのようです。 https://workq.qiita.com/products/adventcalendar/ ということで最古で最長のPerl Advent Calendar 2017を流し読みしてざっくりまとめてみました。 今は記事を書いている15日の記事分までしかありませんが、年内に25日までの記事を追記する予定です。 もっと過去の記事を見たい場合urlの2017を適当なものに変更すると表示できます。 そしてgithubでも公開されています。 http://www.perladvent.org/ Day1 Emoji - P
Minilla に Pull Request を送った話を思い出しつつ書いていきます。 Strawberry Perl + Minilla 皆さんはperl5をインストールした後、どのモジュールをインストールしますか? 自分は、 Minilla を早い段階でインストールしています。 Minilla は Perl Module 作成時のひな形作成や CPAN への Upload に使えるツールです。 ちょっとしたスクリプトであっても、 Minilla のひな形に合わせておく事で配りやすくなったりテストしやすくなったりと面倒が減ります。 Minilla - CPAN module authoring tool が、 Windows で Strawberry Perl 使っているとテストが Fail する(※)のでちょっと難儀します。 ※ Fail しない人もいるようなのが謎ですが・・・ $ c
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く