ID Name Runtime Info
ADA Ada gnatmake 12.3.0
AWK AWK awk 1.3.4
BF Brain**** opt 16.0.6, llc 16.0.6, ld_x64 2.42

Classical brain**** with as many byte-sized cells as there are bytes in the memory limit.

C C (GCC) gcc 13
C11 C11 gcc11 13
CBL COBOL cobc 4.0
Clang C (Clang) clang 16.0.6
Clang++ C++14 (Clang) clang++ 16.0.6
C++03 C++03 g++ 13
C++11 C++11 g++11 13
C++14 C++14 (GCC) g++14 13
C++17 C++17 g++17 13
C++20 C++20 g++20 13
D D dmd 2.107.0
DART Dart dart 3.2.6
F95 Fortran gfortran 13
FORTH Forth gforth 0.7.3

Submissions ran as gforth <source>.fs -e bye.

GAS32 Assembly (x86) as_x86 2.42, ld_x86 2.42
GAS64 Assembly (x64) as_x64 2.42, ld_x64 2.42
GO Go go 1.21.6
Groovy Groovy groovyc 4.0.18, java 19.0.2
HASK Haskell ghc 9.4.7
ICK INTERCAL ick
JAVA Java (latest) javac 19.0.2
JAVA8 Java 8 javac 1.8.0
KOTLIN Kotlin kotlinc 1.9.22, java 19.0.2
LEAN4 Lean 4 lean 4.5.0
LLC LLVM IR llc 16.0.6, ld_x64 2.42
LUA Lua lua 5.3.6
C# C# csc 6.12.0.200, mono 6.12.0.200
F# F# fsharpc 11.0.0.0, mono 6.12.0.200
VB Visual Basic vbnc 0.0.0.5943, mono 6.12.0.200
NASM NASM nasm 2.16.1, ld_x86 2.42
NASM64 NASM64 nasm 2.16.1, ld_x64 2.42
NODEJS JavaScript (Node.js) node 20.11.0
OBJC Objective-C gcc 13

Objective-C with GNUstep Base 1.22.1 on GCC 4.7.2+.

OCAML OCaml ocaml 5.0.0

OCaml with Jane Street Base, Core, and Stdio installed, as well as Zarith.

PAS Pascal fpc 3.2.2
PERL Perl perl 5.38.2
PHP PHP php 8.2.12
PIKE Pike pike 8.0
PRO Prolog swipl 9.0.4
PY2 Python 2 python 2.7.18
PY3 Python 3 python3 3.11.8
PYPY2 PyPy 2 pypy 7.3.15, implementing python 2.7.18
PYPY3 PyPy 3 pypy3 7.3.15, implementing python 3.10.13
RKT Racket racket 8.10
RUBY Ruby ruby 3.1.2
RUST Rust rustc 1.76.0

This includes the custom dmoj crate. You can find the source code here.

Lisp Lisp sbcl 2.3.7
SCALA Scala scalac 2.11.12, java 19.0.2
SCM Scheme csc 5.3.0
SED Sed sed 4.9
SWIFT Swift swiftc 5.4.3
TCL TCL tclsh 8.6
TEXT Text cat 9.4
TUR Turing tprolog
V8JS JavaScript (V8) v8dmoj 9.3.345.19

This is a custom version of V8 that adds six functions in order to perform I/O and aid in online judging.

  • print(...): similar to Python's print, prints all argument separated by space followed by new line.
  • flush(): flushes stdout, ensuring everything output by print() immediately shows up.
  • gets(): similar to the Ruby equivalent, returns one line of input from stdin.
  • read(bytes): read bytes bytes from stdin as an ArrayBuffer.
  • write(buffer): write a typed array, ArrayBuffer, or a view of ArrayBuffer to stdout.
  • quit(code): exits the program with code.
  • You can also assign to the global variable autoflush to control whether print() flushes.
ZIG Zig zig 0.6.0