Local Compilers

The grading system runs on Linux (Ubuntu 16.04) and uses the following compilers / runtime environments:

  • C (gcc 5.4.0): /usr/bin/gcc -fno-asm -O2 $SRC -lm
  • C++ (gcc 5.4.0): /usr/bin/g++ -fno-asm -O2 -std=c++11 $SRC -lm
  • Pascal (fpc 3.0.0): /usr/bin/fpc -S2 -O2 $SRC
  • Python 2 (cpython 2.7.12): /usr/bin/python $SRC
  • Python 3 (cpython 3.5.2): /usr/bin/python3 $SRC
  • Java (oracle 1.8.0_73): /usr/bin/javac -encoding UTF-8 $SRC, /usr/bin/java $CLASSNAME
    • Java submissions must be contained in a single .java file with a single public class. The file should belong to the default package (i.e. no package lines at the beginning of the file).
  • C# (mono /usr/bin/mcs $SRC
  • Prolog (swi prolog 7.2.3): /usr/bin/swipl -f none -q -g main -t halt -s $SRC
    • The program must contain the main/0 predicate, which will be used as the evaluation goal.
  • Ruby (ruby 2.3.1): /usr/bin/ruby2.3 $SRC

Warning: The grading system uses the en_US.UTF-8 locale. Reading non-UTF-8 inputs with python or java under this locale is problematic; use low-level reading functions (e.g. sys.stdin.buffer.readline() in python).