Foreign function interface

Foreign function interface

Foreign function interface

Foreign function interface o FFI es un mecanismo por el que un programa escrito en un lenguaje de programación puede realizar llamadas a funciones o usar los servicios escritos en otro. El término procede de la especificación de Common Lisp, aunque también se usa oficialmente en Haskell. Otros lenguajes usan otra terminología, así, el lenguaje Ada habla de "language bindings", mientras que en Java se denomina Java Native Interface, or JNI. No obstante, se suele hablar de forma genérica de Foreign function interface para referirse a estos mecanismos.

Por supuesto, a pesar de su nombre, las FFIs no se limitan a llamadas a función; muchos FFI permiten llamadas a métodos de objetos; e incluso algunos permiten el trasiego de tipos datos no triviales o/y objetos entre distintos lenguajes.

El término foreign function interface no se suele usar para describir entornos de ejecución multi-lenguajes como Microsoft Common Language Runtime, donde existe un sustrato que común que permite a cualquier lenguaje usar los servicios definidos por otro, siempre que cumplan el Common Language Specification. Además, existen muchas otras arquitecturas como Java RMI, RPC, CORBA y SOAP, que permiten usar servicios escritos en otros lenguajes; a tales arquitecturas no se les suele considerar FFIs.


Wikimedia foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Mira otros diccionarios:

  • Foreign function interface — A foreign function interface (or abbr|FFI|Foreign Function Interface) is a mechanism by which a program written in one programming language can call routines or make use of services written in another. The term comes from the specification for… …   Wikipedia

  • Foreign Function Interface — Eine Binärschnittstelle definiert eine Schnittstelle auf Maschinenebene zwischen einem Programm und dem Betriebssystem, bzw. zwischen einem Programm und einer Bibliothek, oder auch zwischen verschiedenen Bestandteilen des Programms. Eine… …   Deutsch Wikipedia

  • Application programming interface — API redirects here. For other uses, see API (disambiguation). An application programming interface (API) is a source code based specification intended to be used as an interface by software components to communicate with each other. An API may… …   Wikipedia

  • Direct Programming Interface — (DPI) is an interface which we use to interface System Verilog with foreign languages. These Foreign languages can be a C, C++, System C as well as others. DPI s consists of two layers: A System Verilog Layer and a Foreign language layer. Both… …   Wikipedia

  • Brain–computer interface — Neuropsychology Topics Brain computer interface …   Wikipedia

  • Brain-computer interface — A brain computer interface (BCI), sometimes called a direct neural interface or a brain machine interface, is a direct communication pathway between a human or animal brain (or brain cell culture) and an external device. In one way BCIs,… …   Wikipedia

  • Application binary interface — In computer software, an application binary interface (ABI) describes the low level interface between an application program and the operating system, or the interface between an application and its libraries, or that between component parts of… …   Wikipedia

  • FFI — Foreign Function Interface (Computing » General) Five Factor Inventory (Business » General) * Atech FastFont (AllType) (Computing » File Extensions) …   Abbreviations dictionary

  • GTK-server — Infobox programming language name = GTK server logo = paradigm = year = 2003 designer = Peter van Eerten developer = Peter van Eerten latest release version = 2.2.8 latest release date = September 29, 2008 typing = implementations = dialects =… …   Wikipedia

  • Component Object Model — Not to be confused with COM file. Component Object Model (COM) is a binary interface standard for software componentry introduced by Microsoft in 1993. It is used to enable interprocess communication and dynamic object creation in a large range… …   Wikipedia

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”