Product Code Database
Example Keywords: playbook -grand $54
   » » Wiki: Language Binding
Tag Wiki 'Language Binding'.
In computing, a binding from a programming language to a library or service is an application programming interface (API) providing to use that library or service in a given programming language.

Binding generally refers to a mapping of one thing to another. In the context of software libraries, bindings are wrapper libraries that bridge two programming languages, so that a library written for one language can be used in another language. Many software libraries are written in system programming languages such as C or C++. To use such libraries from another language, usually of higher-level, such as Java, , Scheme, Python, or Lua, a binding to the library must be created in that language, possibly requiring the language's code, depending on the amount of modification needed. However, most languages offer a foreign function interface, such as Python's and 's ctypes, and Embeddable Common Lisp's cffi and uffi.

For example, Python bindings are used when an extant C library, written for some purpose, is to be used from Python. Another example is libsvn which is written in C to provide an API to access the Subversion software repository. To access Subversion from within Java code, libsvnjavahl can be used, which depends on libsvn being installed and acts as a bridge between the language Java and libsvn, thus providing an API that invokes functions from libsvn to do the work.

Major motives to create library bindings include , to reduce reimplementing a library in several languages, and the difficulty of implementing some efficiently in some high-level languages.

Runtime environment

Object models
  • Common Object Request Broker Architecture (CORBA) – -language model
  • Component Object Model (COM) – Microsoft Windows only cross-language model
    • Distributed Component Object Model (DCOM) – extension enabling COM to work over networks
    • Cross Platform Component Object Model () – Mozilla applications model
  • Common Language Infrastructure – .NET Framework -language model
  • – open -language model

Virtual machines
  • Comparison of application virtual machines


See also
  • Application programming interface (API)
  • Application binary interface (ABI)
  • Calling convention
  • Simplified Wrapper and Interface Generator () – interface binding generator from many languages to many languages, open-source

External links

Page 1 of 1
Page 1 of 1


Pages:  ..   .. 
Items:  .. 


General: Atom Feed Atom Feed  .. 
Help:  ..   .. 
Category:  ..   .. 
Media:  ..   .. 
Posts:  ..   ..   .. 


Page:  .. 
Summary:  .. 
1 Tags
10/10 Page Rank
5 Page Refs
1s Time