The contest is over. 13 people solved all problems — you guys are amazing!
The editorial will be available here.
Today's language is FALSE, stack-based esoteric programming language invented over 20 years ago.
The traditional A+B problem (integers A and B are separated with a space) can be solved like this.
To test your solutions, you can:
- download source code in C of the original interpreter here. Testing system uses this interpreter with -q option.
- use "Custom Invocation".
- use online interpreters (they differ from the reference interpreter a bit but make debugging much easier): 1, 2.
- language description by its author Wouter van Oortmerssen
- Progopedia article
- examples at Rosetta Code
- Language description contains instructions ø and ß. The reference interpreter uses O and B instead (both online interpreters support ø and ß).
- End of file is encoded as #-1, end of line — as #13#10.
- The stack MUST be empty when program completes, otherwise the interpreter will post an error to stdout, and output will be judged as incorrect.
Surprise Language Round #7 will take place on September 13th, the Programmers' Day.
The rules of the contest are as follows:
- The contest is unrated for everybody.
- The round uses ACM ICPC rules: the standing is defined by the number of solved problems, ties are resolved based on penalty time. Initially the penalty is 0, and for each solved problem it is increased by submission time (since the start of the contest) + 20 minutes for each failed submission. The solution is considered to be correct if it passes all tests from a predefined test set; you know whether the solution is right immediately after sending it. There are no hacks.
- The round has 8 problems, sorted by estimated complexity, and you have 2 hours to solve it.
- Solutions are accepted only in one language, which will be announced at the beginning of the contest. The language was created a while ago, we didn't invent it for this occasion.
- Please reread this post at the beginning of the contest: we will announce the language and add instructions to install the compiler (the contest interface will provide an option to run your solutions online as well) and links to useful manuals. Other than that, learning the language is up to the competitor. You can use any resources to solve the problems (as long as you remember that this is an individual competition); you don't have to limit yourself to the manuals provided in the post.
I hope that the language I chose will be unknown to most of the competitors. For reference, here is the list of previous Surprise/Unknown Language Rounds.
Good luck! And happy Programmers' Day!