<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE chapter SYSTEM "chapter.dtd">

<chapter>
  <header>
    <copyright>
      <year>2000</year><year>2015</year>
      <holder>Ericsson AB. All Rights Reserved.</holder>
    </copyright>
    <legalnotice>
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at
 
          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
    
    </legalnotice>

    <title>Introduction</title>
    <prepared>Gunilla Hugosson</prepared>
    <docno></docno>
    <date></date>
    <rev></rev>
    <file>introduction.xml</file>
  </header>
  <marker id="interoperability tutorial"></marker>
  <p>This section informs on interoperability, that is, information
    exchange, between Erlang and other programming languages. The
    included examples mainly treat interoperability between Erlang and
    C.</p>

  <section>
    <title>Purpose</title>
    <p>The purpose of this tutorial is to describe different
      interoperability mechanisms that can be used when integrating a
      program written in Erlang with a program written in another
      programming language, from the Erlang programmer's
      perspective.</p>
  </section>

  <section>
    <title>Prerequisites</title>
    <p>It is assumed that you are a skilled Erlang programmer,
      familiar with concepts such as Erlang data types, processes,
      messages, and error handling.</p>
    <p>To illustrate the interoperability principles, C programs
      running in a UNIX environment have been used. It is assumed that
      you have enough knowledge to apply these principles to the
      relevant programming languages and platforms.</p>
    <note>
      <p>For readability, the example code is kept as simple as
        possible. For example, it does not include error handling,
        which might be vital in a real-life system.</p>
    </note>
  </section>
</chapter>

