Perl Hackers Hub

第72回 初学者に伝えたい Perl学習の勘所 ―勉強会を10年運営して培ったノウハウ(1)

この記事を読むのに必要な時間:およそ 2.5 分

環境構築

それでは,特につまずきやすい環境構築から学んでいきましょう。

Perl入学式では,受講生が各自のPCに環境構築を行うところから学習を始めます。Perl入学式で行っている方法をもとに,お勧めの環境構築方法を解説します。

Windowsでの環境構築

WindowsでのPerlの環境構築には,次の方法があります。

Perl入学式は,ターミナルを知らない,触れたことがない人を想定しています。このため,MSYS2を利用します。Active PerlやStrawberry Perlを利用するよりもインストールの手間はかかりますが,Perlと同時に標準的なシェルに触れられるMSYS2は理想的な学習環境です。また,ターミナル操作の学習過程をmacOS/Linux環境の受講生と共有できます。

WSL2による環境構築でも,MSYS2と同様に標準的なシェルとPerlに触れることが可能です。ただし,Perl入学式では古いPCを利用する人もいることから,動作の軽いMSYS2を採用しています。

MSYS2を使った環境構築手順は,テキストと動画でWebに公開しています。

macOSでの環境構築

macOSでは,macOSにインストールされているPerl,俗に言うシステムPerlを利用します注5⁠。初歩的文法を学ぶ初学者にとっては,システムPerlで問題ありません。このため,特に環境構築は行いません。

ただし,Appleは将来的にmacOSからスクリプト言語を外す方針を表明しました。何らかの原因でシステムPerlが利用できない場合には,macOS用のパッケージマネージャーであるHomebrewを利用してPerlをインストールしてください。執筆時点のバージョンは3.4.4です。

Homebrewは,ターミナルから次のスクリプトを実行してインストールします。

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Homebrewのインストール後に,次のコマンドでPerlをインストールします。

$ brew install perl

Perlの発展的なインストール方法

本項では,Perlの発展的なインストール方法を紹介します。ただし,本項の方法は,ほかの言語に触れていたり,ターミナルの操作に慣れている人向けです。

plenvによる環境構築

─⁠─ バージョンの異なるPerlを使い分ける

サービスの本番環境と開発環境で,Perlのバージョンが異なる場合があります。Perlは後方互換性に優れた言語ですが,両環境は同じバージョンだと安心です。

このようなときは,Perlのバージョンを切り替えられるplenvが便利です。執筆時点のバージョンは2.3.2です。

Homebrewを用いてplenvをインストールするには,次のコマンドを実行します。

$ brew install plenv

インストール後は環境変数のエクスポートが必要です。公式ページを参考に行ってください。

以下は,plenvの利用例です。

インストール可能なPerlのバージョンのリストを表示する
$ plenv install --list

指定したバージョンのPerlをインストールする
$ plenv install 5.34.1

指定したバージョンのPerlをシステムで利用する
$ plenv global 5.34.1

Perlを含む,さまざまな言語のバージョンを切り替えて利用したい人は,anyenvが便利です。

Dockerによる環境構築

─⁠─ 既存環境に変更を加えずPerlを利用する

Dockerを利用することで,インストールを行わずにPerlを利用できます。Perlの公式Dockerイメージも公開されています。

macOSでDockerを利用するには,Docker HubからDocker Desktop for Macをダウンロードしてインストールします。実際に利用する場合はDockerfileを用意して環境を整えますが,ここでは割愛します。以下は,Docker Desktop for Mac 4.5.0での利用例です。

公式イメージをダウンロードする
$ docker pull perl:latest

Perlのバージョン情報を表示する
$ docker run --rm perl:latest perl -v

ワンライナーでHello, World!を表示する
$ docker run --rm perl:latest perl -E"say 'Hello, World!'"
注5)
現行のmacOS Montereyには,Perl 5.30.3がインストールされています。

<続きの(2)こちら。>

WEB+DB PRESS

本誌最新号をチェック!
WEB+DB PRESS Vol.129

2022年6月24日発売
B5判/168ページ
定価1,628円
(本体1,480円+税10%)
ISBN978-4-297-12890-6

  • 特集1
    Reactの深層
    最新バージョンから読み解く! 変わる常識と変わらない思想
  • 特集2
    できるところから無理なく導入!
    小さく始めるデザインシステム
  • 特集3
    最新レコメンドエンジン総実装
    協調フィルタリングから深層学習まで

著者プロフィール

尾形鉄次(おがたてつじ)

大学院卒業後の2003年,Webメール開発会社に入社。以後10年以上,Perlを使ったWeb開発に携わる。

教育に関しては大学でのTAの経験などから課題感を持っていたが,2013年以降にPerl入学式などのコミュニティで教える側に立つことにつながり,そこで得られた知見を社内外で活かしている。

2019年よりJapan Perl Association理事,およびPerl入学式2代目代表を務める。

GitHub:xtetsuji
Twitter:@xtetsuji


和田智(わださとし)

Perl入学式 in YAPC::Asia 2013で受講生としてPerlに触れる。現在は経理業務を中心にバックオフィス業務を行っている。

シーサー㈱
GitHub:sironekotoro


三島智一(みしまともかず)

本職はITとは関連のない仕事に就いているが,2012年にPerl入学式に受講生とした事をきっかけに,趣味でプログラミング,オープンソースコミュニティ活動に参加している。現在はPerl入学式サポーター,Kansai.pm代表を務める。

GitHub:tomcha
Twitter:@tomcha_