オンラインジャッジとはプログラミングコンテストのために作られたプログラムの自動採点システムであり,選手が提出したソースコード (以下,ユーザプログラムと言う) をコンパイルして実行しその結果を元に採点を行います.プログラミングコンテストは公正にかつ問題を起こさずに粛々と行われなければなりません.送られてきた任意のソースコードを実行するという極めて危険な行為をせざるをえないオンラインジャッジでは,これらを満たすために様々な工夫が行われています.この記事では,私が作っている Imo Judge を例にとり様々な工夫を紹介します. サーバの構成 ICPC では PC2 という Java で書かれたジャッジシステムが使われています.また TopCoder も同様に Java で書かれたジャッジシステムが使われています.しかし,クライアント側でアプリケーションとして動かすと環境依存を避けることは (