You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/Configuring a contest.rst
+7-9Lines changed: 7 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -201,33 +201,31 @@ Programming languages
201
201
202
202
CMS allows to restrict the set of programming languages available to contestants in a certain contest; the configuration is in the contest page in AWS.
203
203
204
-
CMS offers out of the box the following combination of languages: C, C++, Pascal, Java (in two flavours, either compiled with gcj or using a JDK), Python 2, PHP.
204
+
CMS offers out of the box the following combination of languages: C, C++, Pascal, Java (using a JDK), Python 2 and 3, PHP, Haskell, Rust, C#.
205
205
206
-
C, C++ and Pascal are the default languages, and, together with Java with gcj, have been tested thoroughly in many contests.
206
+
C, C++ and Pascal are the default languages, and have been tested thoroughly in many contests.
207
207
208
208
PHP and Python have only been tested with Batch task types, and have not thoroughly analyzed for potential security and usability issues. Being run under the sandbox, they should be reasonably safe, but, for example, the libraries available to contestants might be hard to control.
209
209
210
-
Java with JDK works with Batch and Communication task types. Under usual conditions (default submission format) contestants must name their class as the short name of the task.
210
+
Java works with Batch and Communication task types. Under usual conditions (default submission format) contestants must name their class as the short name of the task.
211
211
212
212
.. warning::
213
213
214
-
Java with JDK uses multithreading even for simple programs. Therefore, if this language is allowed in the contest, multithreading and multiprocessing will be allowed in the sandbox for *all* evaluations (even with other languages).
214
+
Java uses multithreading even for simple programs. Therefore, if this language is allowed in the contest, multithreading and multiprocessing will be allowed in the sandbox for *all* evaluations (even with other languages).
215
215
216
216
If a solution uses multithreading or multiprocessing, the time limit is checked against the sum of the user times of all threads and processes.
217
217
218
218
219
219
Language details
220
220
----------------
221
221
222
-
* C and C++ are supported through the GNU Compiler Collection. Submissions are optimized with ``-O2``, and use the 2011 standards for C and C++.
222
+
* C and C++ are supported through the GNU Compiler Collection. Submissions are optimized with ``-O2``. Multiple C and C++ language revisions are supported.
223
223
224
-
* Java with gcj is also supported through the GNU Compiled Collection. Programs are compiled with ``gcj``, optimized with ``-O3``, and then run as normal executables. Notice that gcj only fully supports Java 1.4.
225
-
226
-
* Java with JDK uses the system version of the Java compiler and JVM.
224
+
* Java uses the system version of the Java compiler and JVM.
227
225
228
226
* Pascal support is provided by ``fpc``, and submissions are optimized with ``-O2``.
229
227
230
-
* Python submissions are interpreted using Python 2 (you need to have ``/usr/bin/python2``).
228
+
* Python submissions are executed using the system Python interpreter (you need to have ``/usr/bin/python2`` or ``/usr/bin/python3``, respectively).
231
229
232
230
* PHP submissions are interpreted by ``/usr/bin/php``.
The above commands provide a very essential Pascal environment. Consider installing the following packages for additional units: `fp-units-base`, `fp-units-fcl`, `fp-units-misc`, `fp-units-math` and `fp-units-rtl`.
0 commit comments