Una interfaz de funciones foráneas (Foreign function interface, en inglés) es un mecanismo por el cual 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, o 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 de función; muchos FFI permiten llamadas a métodos de objetos; e incluso algunos permiten el trasiego de tipos de datos no triviales y/u objetos entre distintos lenguajes. El término foreign function interface no se suele usar para describir entornos de ejecución multilenguajes como Microsoft Common Language Runtime, donde existe un "sustrato" común que permite a cualquier lenguaje usar los servicios definidos por otro, siempre que cumplan el . 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. (es)
A foreign function interface (FFI) is a mechanism by which a program written in one programming language can call routines or make use of services written in another. (en)
Foreign function interface(フォーリン・ファンクション・インターフェイス、FFI)とは、あるプログラミング言語から他のプログラミング言語で定義された関数などを利用するための機構。主に高水準言語からC/C++などの関数やメソッドを呼び出し、OS固有の機能などを利用するために使用されることが多い。 FFIという用語はCommon Lispにおける仕様に由来し、Haskellでも同様にFFIという用語が使われている。Adaなどでは言語間バインディング(または単にバインディング, language binding)と呼ばれている。 FFIという用語自体に「関数(Function)」という言葉が含まれているが、多くのFFIでは単に他言語で書かれた関数が呼び出せるだけではなく、オブジェクトのメソッドを呼び出したり、その返り値を取得し、データ型やクラスを言語間で相互変換することができる。 (ja)
외부 함수 인터페이스(Foreign function interface, FFI)는 한 프로그래밍 언어로 작성된 프로그램이 다른 언어로 작성된 서비스를 이용할 수 있거나 그에 따른 함수를 호출할 수 있는 구조이다. 이 용어는 커먼 리스프의 사양에서 비롯되었고, 언어 간 호출이라는 언어 기능으로 명백히 가리키고 있다. 또, 이 용어는 하스켈, 파이썬 프로그래밍 언어에 의해 공식 사용된다. 그 밖의 다른 언어는 다른 용어를 사용한다. 에이다는 언어 바인딩에 대해서 논하며, 자바는 FFI를 자바 네이티브 인터페이스(JNI)나 (JNA)로 부른다. 외부 함수 인터페이스는 이러한 서비스를 제공하는 구조를 설명하는 용어로 일반화되고 있다. 대부분의 경우 FFI는 고급 프로그래밍 언어로 정의되는데, C와 C++와 같이 이보다 더 저급의 프로그래밍 언어에서 구현, 정의된 서비스를 이용할 수 있다. 수많은 FFI들은 호출된 언어가 호스트 언어의 서비스도 호출할 수 있는 수단을 제공한다. (ko)
Una FFI ( Foreign Function Interface ) è un meccanismo mediante il quale un programma scritto in un linguaggio di programmazione può chiamare routine o fare uso di servizi scritti in un altro. (it)
Uma Interface de função externa (do inglês Foreign function interface, FFI) é um mecanismo pela qual, um programa escrito em determinada linguagem e tecnologia, pode realizar chamadas, funções e comunicar-se outros programas e serviços de linguagens distintas. (pt)
A foreign function interface (FFI) is a mechanism by which a program written in one programming language can call routines or make use of services written in another. (en)
Foreign function interface(フォーリン・ファンクション・インターフェイス、FFI)とは、あるプログラミング言語から他のプログラミング言語で定義された関数などを利用するための機構。主に高水準言語からC/C++などの関数やメソッドを呼び出し、OS固有の機能などを利用するために使用されることが多い。 FFIという用語はCommon Lispにおける仕様に由来し、Haskellでも同様にFFIという用語が使われている。Adaなどでは言語間バインディング(または単にバインディング, language binding)と呼ばれている。 FFIという用語自体に「関数(Function)」という言葉が含まれているが、多くのFFIでは単に他言語で書かれた関数が呼び出せるだけではなく、オブジェクトのメソッドを呼び出したり、その返り値を取得し、データ型やクラスを言語間で相互変換することができる。 (ja)
외부 함수 인터페이스(Foreign function interface, FFI)는 한 프로그래밍 언어로 작성된 프로그램이 다른 언어로 작성된 서비스를 이용할 수 있거나 그에 따른 함수를 호출할 수 있는 구조이다. 이 용어는 커먼 리스프의 사양에서 비롯되었고, 언어 간 호출이라는 언어 기능으로 명백히 가리키고 있다. 또, 이 용어는 하스켈, 파이썬 프로그래밍 언어에 의해 공식 사용된다. 그 밖의 다른 언어는 다른 용어를 사용한다. 에이다는 언어 바인딩에 대해서 논하며, 자바는 FFI를 자바 네이티브 인터페이스(JNI)나 (JNA)로 부른다. 외부 함수 인터페이스는 이러한 서비스를 제공하는 구조를 설명하는 용어로 일반화되고 있다. 대부분의 경우 FFI는 고급 프로그래밍 언어로 정의되는데, C와 C++와 같이 이보다 더 저급의 프로그래밍 언어에서 구현, 정의된 서비스를 이용할 수 있다. 수많은 FFI들은 호출된 언어가 호스트 언어의 서비스도 호출할 수 있는 수단을 제공한다. (ko)
Una FFI ( Foreign Function Interface ) è un meccanismo mediante il quale un programma scritto in un linguaggio di programmazione può chiamare routine o fare uso di servizi scritti in un altro. (it)
Uma Interface de função externa (do inglês Foreign function interface, FFI) é um mecanismo pela qual, um programa escrito em determinada linguagem e tecnologia, pode realizar chamadas, funções e comunicar-se outros programas e serviços de linguagens distintas. (pt)
Una interfaz de funciones foráneas (Foreign function interface, en inglés) es un mecanismo por el cual 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, o JNI. No obstante, se suele hablar de forma genérica de Foreign function interface para referirse a estos mecanismos. (es)