今回は Wandbox という便利サイトの紹介です。
先日に下記の記事で「compiler-exploerore」というサイトを紹介しました。これはC/C++やDust、Go言語のコンパイル結果(アセンブラ出力)をオンラインで確認できるものでした。
今回の Wandbox は、アセンブラ出力でなく実行結果を確認するものです。多くの言語(30以上!)に対応しています。
URLは下記からアクセスできます
Wandboxとは
Wandbox は、オンライン上様々な言語のでコンパイル・実行ができるサービスです。その場でサクッとプログラムを動かせるので便利です。やたらめったらに多くのコンパイラのバージョンに対応していて、各バージョンでの動作差異に重宝します。他にも新しい言語を勉強したい時に、開発環境を構築する前の味見として使えるかと思います。慣れない言語だと環境構築だけで心が折れたりしますからね。。。
内部の仕組みに興味のある人は Wandbox を支える技術 を参照してみてください。Yesod という Haskell の Web フレームワークで作ってるそうです。
さわってみよう!
さっそくさわってみましょう。と言っても、特に説明することがないくらいシンプルかつ分かりやすいです。
まずはサイトへアクセスしましょう。下記からアクセスできます。アイコンというか「三へ( へ՞ਊ ՞)へ ハッハッ」という微妙にキモい絵文字が見えるかもしれませんが気にしないことにしましょう。作者さんの遊び心なんでしょう、きっと。。。
https://wandbox.org
下記のような構成です。これを見ればほぼ使い方はわかるかと思いますが、簡単に説明しますね。
真ん中の main 関数があるところに、試したいコードを上書きします。初期状態は、 C++ で「Hello, Wandbox!」と表示するサンプルプログラムが書かれています。
左の列で言語とコンパイラ、オプションを選択します。上記の画像では gcc HEAD 7.01 が選択されていますね。他に最適化オプション(Optimize)やBoost、C++のバージョンなど選べるようになっています。さらに細かい設定を追加したい場合は「Compiler Opthons:」とあるボックスに自由にコンパイラオプションを記述できます。
あとは真ん中のコード下にあるボタン「Run (or Ctrl+Enter)」を押します。するとコンパイル&実行処理されます。サンプルコードのままの場合は上の画像のように「Hello, Wandbox!」と表示されるはずです。もしコンパイルエラーがあれば通常のコンパイラと同様にエラーメッセージが表示されます。
もし自分が書いたコード&設定を他の人とシェアしたい場合は、ボタン「Run (or Ctrl+Enter)」のすぐ下にある「Share this code」というボタンを押します。すると、下記のようにTweeter でのシェアかリンクアドレスかどちらかを選択できます。
参考までに2017-04-04時点での対応言語を列挙します。聞いたことない言語もありますね!充実すぎるラインナップ!!
また、それぞれの言語に対して複数のコンパイラ及びコンパイラバージョンに対応しています。例えばCやC++ならば、GCC やClang があります。また、それぞれのコンパイラのバージョンまで指定できます。下記のような感じです。
まとめ
今回はWeb上ですぐにC言語やC++, その他約30言語以上のプログラムをその場で実行できるサイト Wandbox を紹介しました。多くのコンパイラ、バージョンに対応していますので、各コンパイラバージョンでの挙動の差異の確認に便利です。また、新しい言語を始める時のとっかかりとしても有用そうです。ぜひご活用くださいませ!
コメント