Program Execution

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/382ee310-f24f-43cf-8727-474a2f4f20d6/Untitled.png

Execution in computer and software engineering is the process by which a computer or virtual machine reads and acts on the instructions of a computer program. Each instruction of a program is a description of a particular action which must be carried out, in order for a specific problem to be solved.

Compiler

In computing, a compiler is a computer program that translates computer code written in one programming language (the source language) into another language

JIT (just-in-time) compilation

In computing, just-in-time (JIT) compilation (also dynamic translation or run-time compilations)[1] is a way of executing computer code that involves compilation during execution of a program

Interpreter

computer science, an interpreter is a computer program that directly executes instructions written in a programming or scripting language, without requiring them previously to have been compiled into a machine language program. An interpreter generally uses one of the following strategies for program execution:

  1. Parse the source code and perform its behavior directly;

  2. Translate source code into some efficient intermediate representation and immediately execute this;

  3. Explicitly execute stored precompiled code made by a compiler which is part of the interpreter system.

    [1]

Object-oriented Programming

Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code: data in the form of fields (often known as attributes or properties), and code, in the form of procedures (often known as methods).

Many of the most widely used programming languages (such as C++, Java, Python, etc.) are multi-paradigm The central idea of a multiparadigm language is to provide a framework in which programmers can work in a variety of styles, freely intermixing constructs from different paradigms.

Functional Programming