I am excited to announce that the PNOJ's judge system has been completely rewritten.
The rewrite has been worked on for approximately three months.
For the rest of this blog post, this rewrite will be referred to as "Judge v2".
Judge v2 brings support for many new languages: Brainfuck, C18, Java 11, Scratch (yes, really!), and Text.
Introduction of Scratch support makes PNOJ the first online judge to support Scratch.
Make sure to check this page for any compatibility issues. If there are any issues join the Scraterpreter Discord to get help.
Some long standing bugs such as Haskell submissions not being judged, and C++'s
<bits/stdc++.h> header file causing compilation TLE were also fixed. The judge's security has also been improved. PNOJ now uses isolate to sandbox submissions.
I would like to thank Theodore P. for his Brainfuck compiler, Quentin F. for contributing the Haskell judge, and Peter Y. and myself for creating Scraterpreter which is what PNOJ uses to execute Scratch submissions.
Finally, I would like to thank you for using PNOJ.