<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Background: GObject Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="GObject Reference Manual">
<link rel="up" href="pt01.html" title="Part I. Concepts">
<link rel="prev" href="pt01.html" title="Part I. Concepts">
<link rel="next" href="ch01s02.html" title="Exporting a C API">
<meta name="generator" content="GTK-Doc V1.25.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="pt01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="pt01.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="ch01s02.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="chapter">
<div class="titlepage"><div><div><h2 class="title">
<a name="chapter-intro"></a>Background</h2></div></div></div>
<div class="toc"><dl class="toc">
<dt><span class="sect1"><a href="chapter-intro.html#id-1.3.2.5">Data types and programming</a></span></dt>
<dt><span class="sect1"><a href="ch01s02.html">Exporting a C API</a></span></dt>
</dl></div>
<p>
    GObject, and its lower-level type system, GType, are used by GTK+ and most GNOME libraries to
    provide:
    </p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>object-oriented C-based APIs and</p></li>
<li class="listitem"><p>automatic transparent API bindings to other compiled 
      or interpreted languages.</p></li>
</ul></div>
<p>
  </p>
<p>
    A lot of programmers are used to working with compiled-only or dynamically interpreted-only
    languages and do not understand the challenges associated with cross-language interoperability.
    This introduction tries to provide an insight into these challenges and briefly describes
    the solution chosen by GLib.
  </p>
<p>
    The following chapters go into greater detail into how GType and GObject work and
    how you can use them as a C programmer. It is useful to keep in mind that
    allowing access to C objects from other interpreted languages was one of the major design
    goals: this can often explain the sometimes rather convoluted APIs and features present
    in this library.
  </p>
<div class="sect1">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="id-1.3.2.5"></a>Data types and programming</h2></div></div></div>
<p>
      One could say
      that a programming language is merely a way to create data types and manipulate them. Most languages
      provide a number of language-native types and a few primitives to create more complex types based
      on these primitive types.
    </p>
<p>
      In C, the language provides types such as <span class="emphasis"><em>char</em></span>, <span class="emphasis"><em>long</em></span>, 
      <span class="emphasis"><em>pointer</em></span>. During compilation of C code, the compiler maps these
      language types to the compiler's target architecture machine types. If you are using a C interpreter
      (assuming one exists), the interpreter (the program which interprets 
      the source code and executes it) maps the language types to the machine types of the target machine at 
      runtime, during the program execution (or just before execution if it uses a Just In Time compiler engine).
    </p>
<p>
      Perl and Python are interpreted languages which do not really provide type definitions similar
      to those used by C. Perl and Python programmers manipulate variables and the type of the variables
      is decided only upon the first assignment or upon the first use which forces a type on the variable.
      The interpreter also often provides a lot of automatic conversions from one type to the other. For example,
      in Perl, a variable which holds an integer can be automatically converted to a string given the
      required context:
</p>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="normal">my $tmp </span><span class="symbol">=</span><span class="normal"> </span><span class="number">10</span><span class="symbol">;</span>
<span class="normal">print </span><span class="string">"this is an integer converted to a string:"</span><span class="normal"> </span><span class="symbol">.</span><span class="normal"> $tmp </span><span class="symbol">.</span><span class="normal"> </span><span class="string">"</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">;</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

<p>
      Of course, it is also often possible to explicitly specify conversions when the default conversions provided
      by the language are not intuitive.
    </p>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.25.1</div>
</body>
</html>