パッケージ管理の時代がやってきました!

こんにちは。ヤマヤタケシです。
HomeBrew(ホームブリュー)してますか?
(セコムしてますか風に)

今回は、プログラマっぽい人向けの記事です。

今、あらゆるところで、パッケージ管理が進んでいます。

iPhoneのApp Store, OSXも同様のシステムを導入しました。
また、Windowsも8からストアが入りました。

Unix系の環境は昔から、
Portsとかrpm, yum, aptとかで管理していますね。

Macも立派なUnix系です。
Mac Ports, Home Brewがあります。

また、各種言語のモジュールも、
Perlの CPAN,
Rubyの RubyGems,
Luaの LuaRocks
などなど。

さらにEmacs24からpackageがサポートされました!

そんなこんなで、Macでの開発環境がとても手軽に構築する事ができます。

今回、「Luaのスクリプトで多量のファイルを処理したい!」を満たすのが10年前と比較して超絶お手軽です。

brew install lua
でluaをインストールして。

brew install luarocks
でluaのパッケージ管理ソフトをインストールして。

luarocks install luafilesystem
で、luaのファイル処理モジュールをインストールして。

~/.emacs.d/init.elファイルに、

(require ‘package)
(add-to-list ‘package-archives ‘(“melpa” . “http://melpa.milkbox.net/packages/”) t)
(add-to-list ‘package-archives ‘(“marmalade” . “http://marmalade-repo.org/packages/”))
(package-initialize)

を追加して、
M-x package-list-packages
で、対応パッケージのリストをだして、
lua-modeにIキーでマークをつけて、
Xキーでインストールです。
で、lua-modeをインストールしました。

パッケージ管理。。。
世の中に散らばったtar.gzを体系化して、依存関係まで解決してくれます。
そしてgit-hubが高速なホスティングを提供しているようです。

昔、tar.gzを探してきて、./configureして、makeしてコンパイルが通らなくて、足りないtar.gzを探してきて。。。。
それを延々繰り返し。
という苦労がありましたが、もはや過去の物となりました。

すばらしい!

と、同時に10年前の知識がいきているUnix系システムっていいなぁと思います。
ちょくちょく、このブログでもグチのように書いていますが、技術の寿命というのがあります。
Unix関連の知識は10年間腐っていません。
技術が積み重なっています。

オープンな技術を学ぶ事は、寿命の短いハイテク企業の技術を学ぶよりも長い目で見るとお得ですね。
まさかFlushのActionScriptがオワコンになるとは。。。

話がそれましたが、パッケージ管理というメタソフト開発な分野が進んでくれて、とてもハッピーでございます。

皆さんもぜひ!