So this past week I've been delving into Java and exploring its relationship to Ruby. One of the biggest differences between Java an Ruby is in how they run their applications. Java is an example of a a compiled language, whereas Ruby is a scripting language. This post is meant to clarify the difference.

Compiled Languages

Compiled lanugages are programming languages where the code needs to be translated into binary before it can be executed.

Scripting Languages

Scripting languages such as Ruby are programming languages where the code does not need to be compiled. Computers can run the code as is via interpreters(which translate the executable code as it's being run)

So What?

In compiled languages, if you run your program but catch a bug you need to stop your application and then fix the bug. After that, you need to reompile the code and then restart your application.

In scripting languages, you can just fix the bug and reload the application. Don't need to recompile or restart the application.