[Prev]

3 The Official TAS3 API (normative, but non-exclusive)

Although wire-interoperability is the main goal of the TAS3 project, we recognize that interoperability at software interface level, i.e. interchangeable implementations of an API, is valuable as well. Standardization of APIs, in addition to wire protocols, helps to promote building a culture and community of programmers catering for the TAS3 platform. Such community fosters adoption through mutual self help and shared knowledge base. Supporting full constellation of APIs for all programming languages and platforms is fairly expensive business, but is necessary to address the present fragmented market.

The TAS3 API described herein is meant to have multiple implementations. Each implementation provides

The official TAS3 API is not meant to exclude other wire-protocol compatible implementations of TAS3. Thus, while there is only one official API, other APIs can be equally TAS3 compatible on the wire.

The particular API in use is chosen by the programmer by including the appropriate header file or interface description. The particular API implementation in use is chosen by the system administrator or the programmer by linking against a particular library providing the TAS3 binary interface, or by dynamically loading a module implementing the said binary interface. This leaves great implementation flexibility while accurately describing the TAS3 interface and implementation at source code (API) and binary (ABI) level.


[Prev | Next]