Very neat! Suggestion: add a 'flags' field where you can specify stuff like -std=c99 and any other flags you might need for your code to compile, and a horizontal rule or something like that after every line of input code.
If you do the 'flags' thing make sure you filter it to avoid escapes to the underlying shell.
If you do the 'flags' thing make sure you filter it to avoid escapes to the underlying shell.