* separate execution endpoint * pros: * easy to see how many hits are coming in to execute vs just compile * can potentially separate endpoint to different servers, rate limit, queue separately? * maybe cache better as filters are unimportant (if cache at all) * better separation of concerns * ultimately allows for execute-only UI? * cons: * needs two POSTs in the client (probably not a problem) * maybe complicates the UI? Toggle code, code/execute, execute? POST /api/execute// { code: "", stdin: "", libraries, compile options } as per compile? On disk compilation cache? could then separate stdin from compile? S3 put? md5sum? retention policy? redis? will that end up costing too much? Execution queue?