Question Authors' Forum

How does CodeRunner know which languages are installed in the JOBE sandbox?

 
Picture of Richard Lobb
Re: How does CodeRunner know which languages are installed in the JOBE sandbox?
by Richard Lobb - Thursday, 1 December 2016, 8:08 PM
 

Fair enough. I did have a few guilt qualms while writing my first response.

I just implemented the "ideal world" solution, which was easy enough. But having done so, I remembered why I hadn't done that in the first place. When testing a question submission, CodeRunner  begins by asking all enabled sandboxes what languages they support. [That's necessary to handle remote reconfigurable sandboxes like Ideone or even Jobe.] The ideal world implementation of GET LANGUAGES then queries all language subsystems to see if they're available and if so what version. Matlab alone takes 2 seconds to trundle into life, so the performance hit from this approach is unacceptable.

A configuration file approach would work but it's an additional complexity I'd prefer to avoid, and requires manual updating when language versions change. I'd much prefer to find a way to cache the GET LANGUAGES response in an acceptable manner. I'm sure I can find a way, but I want to think about it for a bit. Stay tuned.

Richard