Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I am a student who has entered a game programming competition called FBLA at sch

ID: 650862 • Letter: I

Question

I am a student who has entered a game programming competition called FBLA at school, and I sent them an email because I had a few questions about how the competition is ran.

The main question I had, since I'm a Java programmer was in short: "Does the program need to be an executable, and if a java update/install is needed to run my program, will they install it?"

Their response was (quote): "The file does need to be a .exe and the entire program needs to be able to run independently on the judges

Explanation / Answer

Languages like C and C++ can be compiled to include all libraries they use statically (as part of the executable). This means that the executable will be able to run by itself. Of course, even in this case the executable is supported by the operating system, but this is "for free".

You are right that practical applications normally use dynamically linked libraries and even external data files, but programs arising in programming competitions are usually more low-key and can stand on their own.

The judges have a very practical reason in requiring that the executable be self-sufficient, namely it makes it much easier for them to run it. Java environments are not standard, take up a lot of space, and are time-consuming to install. In principle (and perhaps in practice) you could compile your Java code to Java bytecode and thence to an actual executable, and if you link the appropriate runtime libraries statically, you would get a standalone executable.