Programming language implementation in the context of Bytecode


Programming language implementation in the context of Bytecode

Programming language implementation Study page number 1 of 1

Play TriviaQuestions Online!

or

Skip to study material about Programming language implementation in the context of "Bytecode"


⭐ Core Definition: Programming language implementation

In computer programming, a programming language implementation is a system for executing computer programs. There are two general approaches to programming language implementation:

  • Interpretation: The program is read as input by an interpreter, which performs the actions written in the program.
  • Compilation: The program is read by a compiler, which translates it into some other language, such as bytecode or machine code. The translated code may either be directly executed by hardware or serve as input to another interpreter or another compiler.

In addition to these two extremes, many implementations use hybrid approaches such as just-in-time compilation and bytecode interpreters.

↓ Menu
HINT:

In this Dossier

Programming language implementation in the context of Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs (SICP) is a computer science textbook by Massachusetts Institute of Technology professors Harold Abelson and Gerald Jay Sussman with Julie Sussman. It is known as the "Wizard Book" in hacker culture. It teaches fundamental principles of computer programming, including recursion, abstraction, modularity, and programming language design and implementation.

MIT Press published the first edition in 1984, and the second edition in 1996. It was used as the textbook for MIT's introductory course in computer science from 1984 to 2007. SICP focuses on discovering general patterns for solving specific problems, and building software systems that make use of those patterns.

View the full Wikipedia page for Structure and Interpretation of Computer Programs
↑ Return to Menu

Programming language implementation in the context of Calling convention

In computer science, a calling convention is an implementation-level (low-level) scheme for how subroutines or functions receive parameters from their caller and how they return a result. When some code calls a function, design choices have been taken for where and how parameters are passed to that function, and where and how results are returned from that function, with these transfers typically done via certain registers or within a stack frame on the call stack. There are design choices for how the tasks of preparing for a function call and restoring the environment after the function has completed are divided between the caller and the callee. Some calling convention specifies the way every function should get called. The correct calling convention should be used for every function call, to allow the correct and reliable execution of the whole program using these functions.

View the full Wikipedia page for Calling convention
↑ Return to Menu

Programming language implementation in the context of Compiled language

Informally, a compiled language is a programming language that is usually implemented with a compiler rather than an interpreter. Because any language can theoretically be either compiled or interpreted, the term lacks clarity: compilation and interpretation are properties of a programming language implementation, not of a programming language. Some languages have both compilers and interpreters. Furthermore, a single implementation can involve both a compiler and an interpreter. For example, in some environments, source code is first compiled to an intermediate form (e.g., bytecode), which is then interpreted by an application virtual machine. In other environments, a just-in-time compiler selectively compiles some code at runtime, blurring the distinction further.

View the full Wikipedia page for Compiled language
↑ Return to Menu

Programming language implementation in the context of Declarative programming

In computer science, declarative programming is a programming paradigm that expresses the logic of a computation without describing its control flow.

Many languages that apply this style attempt to minimize or eliminate side effects by describing what the program must accomplish in terms of the problem domain, rather than describing how to accomplish it as a sequence of the programming language primitives (the how being left up to the language's implementation). This is in contrast with imperative programming, which implements algorithms in explicit steps.

View the full Wikipedia page for Declarative programming
↑ Return to Menu