APPLICATION ENVIRONMENT THAT IS INSTALLED ON SOFTWARE WHICH IMITATES DEDICATED HARDWARE.” Source: http://searchservervirtualization.techtarget.com/definition/virtual-machine
AND TOKENIZED IT’S COMPILED TO BYTE CODE USING YARV. ‣ THIS IS VERY SIMILAR TO HOW JAVA WORKS, THE JVM COMPILES IT TO JAVA BYTE CODE. ‣ BEFORE 1.9 RUBY WAS BEING INTERPRETED TO C AND THEN THE C COMPILES TO MACHINE CODE.
Language (Compiled and Interpreted) ▸ dis function to see CPython byte code ▸ https://docs.python.org/2/ library/dis.html ▸ Javascript ▸ Interpreted with optional JIT (just- in-time) compilation support. ▸ All modern day browsers use the JIT ▸ Capstone.js or similar tools can be used to disassemble code to byte code ▸ http://alexaltea.github.io/ capstone.js/
a microscope: An illustrated guide to Ruby internals (1st ed., p. 360). No Starch Press. ‣ Cooper, P. (2011, August 5). Using Ripper to See How Ruby Is Parsing Your Code. Retrieved December 2, 2015, from http:// www.rubyinside.com/using-ripper-to-see-how-ruby-is-parsing-your- code-5270.html ‣ https://www.igvita.com/2008/12/11/ruby-ast-for-fun-and-profit/