Home >> Computers >> Programming >> Languages >> Haskell >> Implementations


  Clean
       


Execution within computer and software engineering is the process by which a computer or virtual computer carries out the instructions of a computer program. A term start is utilized most synonymously.

The related meaning of each "to run" & "to execute" refers to the action of the user starting the program, when around "Please run the ... application."

Context of Execution
A context where execution happen is important. Super pack computer softwcome are executed in the bare machine. Computer program commonly contain inexpressed & explicit assumptions all about resources available at a instance of execution. Virtually all softwcome download are executed using a trend lines of an operating system and run-time libraries specific to the source language that provide crucial services non supplied directly per computer itself. This supportive environment, e.g., ordinarily decouples the program from either straight manipulation of the peripheral device, providing extra general, abstract services instead.

Interpreter
The rules that executes the program is known as an interpreter of the program. Loosely speaking, an interpreter actually does what a program says to clean. This is around counterpoint to the language translator that converts the program from either a single language to an additional. A usual language translators come compilers. Translators usually convert their source language to the language that is simpler & sooner to execute. the ideal is that the ratio of executions to translations of a program is big, so providing a big gain for translation versus straight interpretation of the source language.

Translators normally develop an abstract symptom that is non totally ready to execute. A conversion of the translator object code into the final form that is executed is ofttimes performed per operating formulas upright prior to execution of the program begins. This normally involves modifying a code to attach it to rattling devices addresses & establishing location links between a program & trend lines code within libraries. Around a few subjects this code is farther transformed a foremost instance these are executed, e.g. by simply-around-instance compilers, into a supplementary effective form that persists for a bit of time period, commonly at least when you took the todays execution begin.

Micro-execution
A machine language that is documented as the programming target for virtually tons computers is, inside virtually all legal actions in todays world except mayhap for super elementary processors, actually interpreted by a microprogram running inside a processor, on the rattling devices. There keep around been many tries to project RISC computers that avoid micro-execution, however a distinction between complex & reduced instruction sets has tended to blur on top instance. A independent distinction between this rather micro-interpreter & an acknowledged package interpreter is that a firmware normally doesn't vary. It used to be that firmware ordinarily changed just slowly. A execution devices inside todays world is every now and again implemented in field-reprogrammable logic, & execution schemes that modify a devices dynamically to match a todays requirements survive and could get progressively most common.

Chameleon
Haskell-type language, implements ideas described in a 'A Theory of Overloading'. Compiles Chameleon to (plain) Haskell; can mix Haskell and Chameleon overloading. Descriptions, documents, downloads.

Data Field Haskell
Dialect with instance of data fields (a generalization of arrays), useful for rapid prototyping of parallel algorithms, and parallel high-level system specification.

Eden
Extends lazy functional language Haskell, but overrules lazy evaluation whenever needed to support parallelism; gives programmers enough control to implement parallel algorithms efficiently, and frees them from low level details of process management.

nhc98 from York
A Haskell 98 compiler.

Mondrian
Light version of Haskell to interoperate with other languages in OO environments; runs on .NET (old version for JVM), supports ASP.NET, to embed functional code in webpages with C#. Has version of Glasgow Haskell Compiler using Mondrian for .NET system to compile Haskell for .NET.

Jaskell Project
Java bytecode generator backend for Glasgow Haskell Compiler (GHC), so one can build Java applets or applications via the Haskell language.

pH (MIT parallel Haskell)
A parallel eagerly evaluated variant of Haskell with syntactic provisions for loops, barriers, and I- and M- structure storage.

The Glasgow Haskell Compiler (GHC)
An optimizing compiler for Haskell, written in Haskell. Includes extensions for concurrency and heap & time profiling. [Open Source, BSD-like]

Template Haskell
Haskell 98 extension allowing type-safe compile time metaprogramming, with Haskell, as the manipulating language and the language being manipulated.

Distributed Haskell
Extension for parallel and distributed programming, with combinators from concurrent constraint programming; computational parts of programs are expressed functionally, development was first for tightly coupled multiprocessors, evolved from Goffin.


Computers: Programming: Compilers: Functional






© 2005 GeneralAnswers.org