Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

この記事は Tech KAYAC Advent Calendar 2020 の6日目の記事・AWS & Game Advent Calendar 2020の11日目の記事です。 こんにちは、バックエンドエンジニアの @commojun です。 今回は、最近業務でがんばったことを書きたいと思います。ちなみに、去年のアドベントカレンダーでは、死んだ猫を蘇らせようとしたりしていました。ちなみに蘇った猫ちゃんは現在このような姿になりました。 記事の概要 6年続くサービスのPerlのバージョンを5.16から5.30へバージョンアップさせようとしています 文法が変わってコンパイルエラーが起きたり、テストが運で落ちたり通ったりするようになりました 問題を解決するためにOSSにPullRequestを書く経験をしました 我々の作るサービスは、モジュールを組み合わせ、うまく調整した上で成り立ってるんだなあと
多くのCPAN Authorに育てられ、息をするようにCPANモジュールを書けるようになり、そして分かったこと
この記事は Perl Advent Calendar 2017 の7日目です。 6日は songmuさんによる、 えるしっているか、Lは便利 でした。 今日は、新しいCPANのモジュールマネージャー周りのお話をしたいと思います。 Perlでプロジェクト/ツールの開発をしよう! という時に、モジュールマネージャー Carton を使われる場合が多いのではないでしょうか。 しかし、Perlでプログラムを書いていくと、依存するCPANモジュールが数百個...というのはよくある事で、プロジェクト作成毎に、数百のモジュールインストールを待つには人生は短すぎる、、、そう思われている方も多い事でしょう。 そんな時は、もう一つのモジュールマネージャー Carmel の出番です! Carmelとは Cartonと同じ作者である、Tatsuhiko Miyagawaさんが開発されている新しいモジュールマネージ
最初に結論 これ最強 cat accesslog | perl -F'\t' -nale '%h=map{split/:/,$_,2}@F;print"$h{time}\t$h{ua}"' なぜPerlワンライナーなのか? LTSVログを解析するには、Perlのワンライナーに限る。 なぜならPerlはほとんどのサーバにデフォルトで入ってるから。 Perl 5.8で動くワンライナーを覚えておけばどの環境でも使える。 「何にも依存しない」 これ最強。 基本中のキホン まずは基本形です。 これだけは絶対覚えてしまいましょう。 perl -nale 'print' % cat access_log | perl -nale 'print ' time:[22/Feb/2014:15:13:07 +0900] host:10.10.200.102 ident:- user:- method:GET
This document contains code snippets and data in various programming languages. It shows sample code for loops, modules, subroutines, data types, and more. Version counts from 2009 to 2018 are also included.Read less
2013年頃に登場した plenvですが, 2018年となった今でもPerlの環境構築におけるデファクトスタンダードの立ち位置を維持しています. github.com この記事では, plenvを使ったモダンなPerlの環境構築の手法について紹介します. またplenvのような形で, 様々な言語のために開発された**envを束ねて管理できるanyenvを利用して, plenvを導入する方法についても紹介します. plenvのインストール Git $ git clone git://github.com/tokuhirom/plenv.git ~/.plenv $ git clone git://github.com/tokuhirom/Perl-Build.git ~/.plenv/plugins/perl-build/ $ echo 'export PATH="$HOME/.plenv/
※このエントリはPerl Advent Calendar 2017の9日目のエントリとなります。 8日目は@mackee_wさんの担当でマスタデータを宣言的かつ高速にテストするTest::MasterData::DeclareとTest2の構造についてというエントリでした。Test2を使ったモックデータを伴うテストの記述に、大変強力そうなモジュールでしたね。 さて、本エントリではPerl5におけるコアモジュールについてのさわりと、その中でも鉄板とも呼べる非常に有用なものをいくつか紹介していきます。 コアモジュールとは? Perl5におけるコアモジュールとは、Perl5と抱き合わせでインストールされるモジュール群のことを指します。 コアモジュールとして収録されるモジュール群は、Perl5のバージョンごとに差がありますが、個人的な肌感としては、本当に鉄板とも呼べるような物は大抵5.14以降であ
All slide content and descriptions are owned by their creators.
Perl › バージョン情報 › here 2017年5月30日にPerl 5.26がリリースされました! Perlの登場が1987年ですから、ついに30年目を迎えます! 機能の追加 Perl 5.26におけるいくつかの機能の追加です。便利そうなものをピックアップしてみます。 インデント可能ヒアドキュメント インデント可能ヒアドキュメントの構文が追加されました。これは便利そうです。 my $message = <<~EOS; Hello World EOS 末尾の文字(ここではEOS)の位置が、左の位置になって、出力結果は以下のようになります。 Hello World エディタで、ソースコードの色付けがうまくできるようになるとさらによい感じです。 Unicode 9.0のサポート Unicode 9.0がサポートされました。Unicode 9.0でさらに追加された顔文字などを扱うことができ
yapcjapan2016_lt.md 5分でわかる Perl and web security ma.la CSRFとかXSSとか CSRF: フレームワークの機能使って下さい XSS: Xslateとか自動エスケープして下さい、jsの動的生成はするな 終わり 本題 YAPCなのでPerl固有の問題について解説します。 Webアプリケーションの一般的な流れ パラメータ受け取る(フォームとかJSONとか) 何らかの処理をする レスポンスを返す(HTMLとかJSONとか) フォームやJSONを安全に受け取るには paramはscalarで受け取りましょう Why $params = { name => $r->param("name"), value => $r->param("value"), } これをやると ?name=hoge&name=fuga で壊せる。 list context
WEB+DB PRESSのPerl Hackers Hubで執筆しませんかとお声がけいただいたので、「Perl開発への動的な型制約の導入」について執筆しました。本日発売です。 WEB+DB PRESS Vol.94 作者:藤原 俊一郎,朽木 拓,八木 俊広,吉田 太一郎,うらがみ,のざき ひろふみ,うさみ けんた,水嶋 淳貴,佐々木 健一,柴崎 優季,前島 真一,伊藤 直也,遠藤 雅伸,ひげぽん,海野 弘成,はまちや2,竹原技術評論社Amazon 今回は、動的な型制約とは何かや、なぜPerlに導入したいのか、Smart::Argsを使った型制約の導入方法、型制約の応用など、動的な型制約にまつわる内容について書きました。Perlでもっと安全に開発したいと思っている方には参考になると思うので、是非見ていただければと思います。見出しは次のとおりです。 なぜ動的な型制約を導入したいのか Smart
こんにちは、Webアプリケーションエンジニアのid:nanto_viです。 Webアプリケーションを作っていると、「全角文字と半角文字を統一したい」「ユーザーの入力から漢字を抜き出したい」といったテキスト処理を行う場面にたびたび遭遇します。はてなではWebアプリケーションのサーバー側プログラミング言語としてPerlを多く使っていますが、PerlならこのようなときにUnicodeプロパティを用いた正規表現パターンで柔軟な処理が可能です。 Unicodeプロパティ 現在、ほとんどのプラットフォームで採用されている文字集合がUnicodeです。Unicodeでは文字だけでなくその文字の様々な特性(プロパティ)も定められており、テキスト処理の基礎情報として活用できます。 Perl正規表現でのUnicodeプロパティの利用 Perlの正規表現では、\p{Property_Name=Value}のよう
Perl Hackers Hub 第36回Perlのテストモジュールの使い方・作り方-Test::More、Test::Builder、Test::Stream、そしてPerl 6(1) 本連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーは、Perl関連のイベント 「吉祥寺.pm」の主催などで知られるMagnolia.Kさんで、テーマは「テストモジュールの使い方・作り方」です。 本稿のサンプルコードは、WEB+DB PRESS Vol.90のサポートサイトから入手できます。 Perlにおけるテスト 読者のみなさんはテストを書いていますか。 Perlは昔からテストをとても大事にしてきた言語です。テストを書くために必要なテストモジュールはコアモジュールとしてPerl本体と一緒にインストールされていて、すぐにテストが書ける環境が用意されています。CPANにアップされ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く