| Entity | Programming Language | Scripting Language |
| Definition | A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. | A scripting language, script language or extension language is a programming language that allows control of one or more applications. |
| Type | Compiler-based language | Interpreter based language |
| Usage | Developing something from scratch | Used to combine existing components |
| Running | Run independent of an exterior (or parent) program | Run inside another program |
| Design | Designed to get full usage of a language | Designed to make coding fast and simple |
| Conversion | Converts the whole program into machine language in one shot | Converts high level instructions into machine language |
| Creation | Creates a .exe file | Does not create a .exe file |
| Compilation | Needs to compile the program | There is no need to compile the program |
| Coding | Programming is making a full code of program | Scripts are just a piece of code |
| Temperament | Harder to code. Needs numerous lines of code for each function | Easier to code. Needs only a few short lines of code for each function |
| Complexity | Are complex | Are easy to use and easy to write |
| Development Time | Takes longer to develop as more code needs to be written. | Takes less time to code as it needs less coding. |
| Support | Explicit support of Data Types. Rich support for User Interface Design. Limited support for User Interface Design. | Implicit support of Data Types. Rich support for Graphic Design.Limited or no support for Graphic Design |
| Hosting | Does not require a host. Is self – executable | Requires a host |
| Cost | Increased maintenance cost | Reduced maintenance cost |
| Examples | C, C++, C#, Java, VC++, VB, Basic, COBOL, Pascal, etc. | JavaScript, VB Script, Shell, Perl, Python, Ruby, Rexx, PHP, GameMonkey, Lua, etc. |
Hope this matrix will help you Ankit Shukla
Software Security TechLead