
Bot Title: CodeRemote
by velorien
"CodeRemote is an AIM bot you can use to run code in various languages (currently supported: C#/C++/PHP/Java/Perl/Python).
You simply upload the files containing the code and send a command to the bot, and the stderr and stdout output of the program will be redirected and shown in the IM window for you to see.
This could be very useful if you would like to test some code and don't have your environment set up or are simply wanting to learn a language without going through the trouble of installing and configuring it on your computer.
The bot's handle is CodeRemote."
Usage
First you will need to send the bot the files containing the code you wish to be run.
Afterwards you may run the code by typing run language files
where language is one of csh, cpp, php, java, perl, python and files is a space delimited list of files or a single file.
If you resend a file you have already sent it will overwrite the existing file (note that files are independent for each person using the bot); also after sending a file it is deleted after 15 minutes, so you may have to resend it.
Example 1: you wish to run a Java package named test containing the classes Class1 and Class2; to run this code you would send the folder named test, containing Class1.java and Class2.java and then type run java test/Class1.java test/Class2.java in the IM window.
Example 2: you wish to run some C++ code consisting of a main.cpp file, a functions.cpp file and a header.h file. Simply upload these files and then type
run cpp main.cpp functions.cpp in the IM window.
Note: One restriction applies: your program may not run for more than 3 seconds.
Please let me know if you would like additional features or languages to be supported,
feedback is very welcome at velorien@gmail.com.
Reader Comments (Page 1 of 1)
1. What are the security constraints around this? Will this suffer from the same sort of potential for abuse as other virtual environments have? (ie: those which offer a unix shell through a web browser)
I'm intrigued at how the environment can be controlled for this wide range of languages - presumably a sandbox wrapper to restrict resource accesses (ie: a SecurityManager for Java, etc), or the assumption that this is only used by people in a trusted environment who are rostered for access.
Posted at 8:53AM on Aug 1st 2008 by Bill Mitchell