追記(2017/04/05)
この投稿では luarepl 付属の rep.lua でデフォルトの REPL を置き換える話を紹介しましたが、torch 付属の TREPL の方がより便利に使えそうです。
文脈
ターミナルから lua を叩くと REPL が起動しますが、デフォルトの REPL は補完が効かなかったり、式を評価した際に print しなければ戻り値が表示されないなど、使い勝手がよくありません。これらの挙動は luarepl に付属している rep.lua を使用すると、少しマシになります。
インストール
luarocks でインストールします。
brew install lua
で lua をインストールした場合は、デフォルトで luarocks コマンドが使えます。
$ luarocks install luarepl
下記ディレクトリにインストールされます。今回は 0.8-1 がインストールされました。
/usr/local/lib/luarocks/rocks/luarepl/0.8-1
/usr/local/share/lua/5.2/repl
/usr/local/lib/luarocks/rocks/luarepl/0.8-1/bin/rep.lua が luarepl のサンプルアプリケーションです。
ターミナルから lua を叩いた際、rep.lua が使われるようシェルにエイリアスを設定します。
alias lua='lua /usr/local/lib/luarocks/rocks/luarepl/0.8-1/bin/rep.lua'
$ source ~/.bashrc
ターミナルから再度 lua を叩き、luarepl が使われていることを確認します。この状態で tab 補完が効くはずです。
$ lua
Lua REPL 0.8
>
ついでに、luarepl を require できることを確認します。
$ lua
Lua REPL 0.8
> repl = require "repl"
> repl:name()
REPL
>
luaインタープリタを組み込みたいとき等に使うと利便性が上がるかもしれません。