Two points to consider:
- My compilers class— indeed almost every CS class I have taken— grades projects on one of CS department's Unix servers. Let's call this server "Rome". The class administrators posted a reference implementation of the current project on Rome, and our project's output must match its output exactly. The graders run testcases using a shell command similar to:
java TheProject testcase > testresult; diff testresult actualresultIf that command doesn't return anything, we pass the testcase. Otherwise, it's a big, fat zero. - All the projects this year are written in Java, which can .
Do you see where I'm going with this?
I think it would be devilishly subversive to write a program that pipes the grader's testcases to the reference implementation, captures the output, and returns it to the grader. Do you think they would notice?
I find this especially entertaining considering Lee and I spent around 30 man-hours on the latest project.