Scripting or Programming Language

You will see me refer to Python as a scripting language in this book. Some might say that it is a programming language. Which is correct? They are both correct. In my mind a scripting language is an interpreted language that allows you to quickly do work. Python certainly meets this criteria.

To me, a programming language is something that is used to create large programs and software systems. There are some that certainly have done this with Python. However, I would argue that Python is not the best choice when performance is an issue and the same program will be run many times without any code modifications. I’m sure that anyone who has ever run a recent version of Metasploit would agree that running large programs written in interpreted languages can be painful.

You might ask why we are switching to Python. This is a valid question. There are a couple of reasons to use Python for this task. First, we are no longer just running programs and pushing bytes around. Rather, we are reading in files, interpreting them, performing calculations, and then running programs. Second, we are looking to build a library of code to use in our investigations. Having Python code that interprets MBR and GPT data is likely to be useful further down the road.

results matching ""

    No results matching ""