views:

397

answers:

13

I like to program at my college's computer labs (a Windows environment). Unfortunately, the labs have IDEs & compilers for classes being taught that particular semester, which usually comes down to C, C++, and Java. I'm at a point where it's good for me to play around with a lot of different languages. I'd like to be able to do with from my flash drive.

I am also considering scripting languages (like portable Python) or languages/frameworks/runtimes that may require other programs (PHP needs a whole web stack).

What languages and tools can I use (scripted is OK!) to code and compile without having to install anything on the lab computers, and can be run from and saved on a USB flash drive?

A: 

Any language can be done provided you can fit your libraries and compiler (or interpreter) on it.

Daniel A. White
Yes but in many cases this is inconvenient or leaves traces on the specific computer being used. For example, Visual Studio would probably require some cajoling to work off of a flash drive. Even then, it would probably leave some changes to the registry. Some languages have better support for what I'd like to do.
Eugene M
I did not interpret your question as IDEs. Please correct this. Any language pretty much can be written in Notepad then manually compiled.
Daniel A. White
If they're lab computers, what do you care that the software leaves traces?
emddudley
Well partly, it seems like a matter of courtesy even if it's doing no harm. But generally, if it's leaving traces then it's likely to have my settings linked to a specific machine. This is more of annoyance than a problem.
Eugene M
+2  A: 

you can try Portable Python.

ghostdog74
+1  A: 

Have you looked at DevC++ Portable? Also, Portable Python plus a portable editor like Notepad++ will give you a fairly sweet setup.

sigint
I think I may have heard about it. I knew there was something like that for c++. I figured it be best just to start a question about the topic in general. As for the second suggestion, I have tried it and it has mostly inspired this topic.
Eugene M
+2  A: 

Javascript. Works everywhere with a browser and a text editor (in your case, Notepad).

Adrian Godong
+3  A: 

Anything that runs on any operating system...

Qualification: the QEMU virtualizer is a fairly typical sort of PC emulator with the very unique feature that it can run without the help of an installer to set up it's environment. Thus you can create a VM image on your USB drive with the programming tools of your choice, for the operating system of your choice, and along side that, the QEMU executable, and you're set.

That said, the Windows port of QEMU appears to be abandoned, and its latest, 0.9.1, is dog slow.

You might be able to get another emulator with better performance to work, but this isn't supported out of the box, as far as i'm aware.

This kind of setup has some advantages, since the environment you'll be running is really your own, no matter which computer you happen to be sitting in front of.

TokenMacGuy
Say it ain't so. I really hope the Windows port doesn't die, running other OSs on Windows was the biggest advantage of using it.
NoMoreZealots
A: 

You can use Groovy. Works using JVM ...

vcosk
A: 

Quick Basic works off of a flash drive...

AlbertoPL
A: 

Strawberry Perl Portable will give you Perl.

Sinan Ünür
A: 

You can program Tcl/Tk by installing the single file distribution called "tclkit". You can even put tclkits for multiple platforms on a single drive so you can develop on windows, the mac or most unix boxes from the same drive.

For each platform there's nothing to install but the single executable to get a full implementation of tcl/tk including all of the GUI components.

Bryan Oakley
+2  A: 

You can run XAMPP from a USB flash drive. And if you need an IDE, you can put eclipse on your flash drive, too.

Rob
A: 

AutoHotkey is good for windows.
emacs with its elisp is portable as well.

Naveen
A: 

Clojure is impressively portable, it just requires a JVM (which your college machines should have, since you mention they're used for Java development)

Go to the downloads, get the latest release (currently 1.0.0), extract it and run from the command line:

java -cp clojure-1.0.0.jar clojure.lang.Repl

..and you'll get dropped to the Clojure REPL.

You can run a script, saved as a text file (named myscript.clj) with:

java -cp clojure-1.0.0.jar clojure.main myscript.clj
dbr
+1  A: 

Eclipse is nice because it requires no install - just copy the eclipse directory to wherever you want it. If java is too boring for you, install the scala plugin and blow your mind away.

Peter Recore