Metadata-Version: 1.1
Name: PyCLP
Version: 0.2
Summary: Interface to ECLiPSe CLP
Home-page: pyclp.berlios.de
Author: Oreste Bernardi
Author-email: <name>@<name>.eu  name=oreste
License: Simplified BSD
Description: <?xml version="1.0" encoding="utf-8" ?>
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta name="generator" content="Docutils 0.9.1: http://docutils.sourceforge.net/" />
        <title></title>
        <style type="text/css">
        
        /*
        :Author: David Goodger (goodger@python.org)
        :Id: $Id: html4css1.css 7434 2012-05-11 21:06:27Z milde $
        :Copyright: This stylesheet has been placed in the public domain.
        
        Default cascading style sheet for the HTML output of Docutils.
        
        See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
        customize this style sheet.
        */
        
        /* used to remove borders from tables and images */
        .borderless, table.borderless td, table.borderless th {
          border: 0 }
        
        table.borderless td, table.borderless th {
          /* Override padding for "table.docutils td" with "! important".
             The right padding separates the table cells. */
          padding: 0 0.5em 0 0 ! important }
        
        .first {
          /* Override more specific margin styles with "! important". */
          margin-top: 0 ! important }
        
        .last, .with-subtitle {
          margin-bottom: 0 ! important }
        
        .hidden {
          display: none }
        
        a.toc-backref {
          text-decoration: none ;
          color: black }
        
        blockquote.epigraph {
          margin: 2em 5em ; }
        
        dl.docutils dd {
          margin-bottom: 0.5em }
        
        object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
          overflow: hidden;
        }
        
        /* Uncomment (and remove this text!) to get bold-faced definition list terms
        dl.docutils dt {
          font-weight: bold }
        */
        
        div.abstract {
          margin: 2em 5em }
        
        div.abstract p.topic-title {
          font-weight: bold ;
          text-align: center }
        
        div.admonition, div.attention, div.caution, div.danger, div.error,
        div.hint, div.important, div.note, div.tip, div.warning {
          margin: 2em ;
          border: medium outset ;
          padding: 1em }
        
        div.admonition p.admonition-title, div.hint p.admonition-title,
        div.important p.admonition-title, div.note p.admonition-title,
        div.tip p.admonition-title {
          font-weight: bold ;
          font-family: sans-serif }
        
        div.attention p.admonition-title, div.caution p.admonition-title,
        div.danger p.admonition-title, div.error p.admonition-title,
        div.warning p.admonition-title {
          color: red ;
          font-weight: bold ;
          font-family: sans-serif }
        
        /* Uncomment (and remove this text!) to get reduced vertical space in
           compound paragraphs.
        div.compound .compound-first, div.compound .compound-middle {
          margin-bottom: 0.5em }
        
        div.compound .compound-last, div.compound .compound-middle {
          margin-top: 0.5em }
        */
        
        div.dedication {
          margin: 2em 5em ;
          text-align: center ;
          font-style: italic }
        
        div.dedication p.topic-title {
          font-weight: bold ;
          font-style: normal }
        
        div.figure {
          margin-left: 2em ;
          margin-right: 2em }
        
        div.footer, div.header {
          clear: both;
          font-size: smaller }
        
        div.line-block {
          display: block ;
          margin-top: 1em ;
          margin-bottom: 1em }
        
        div.line-block div.line-block {
          margin-top: 0 ;
          margin-bottom: 0 ;
          margin-left: 1.5em }
        
        div.sidebar {
          margin: 0 0 0.5em 1em ;
          border: medium outset ;
          padding: 1em ;
          background-color: #ffffee ;
          width: 40% ;
          float: right ;
          clear: right }
        
        div.sidebar p.rubric {
          font-family: sans-serif ;
          font-size: medium }
        
        div.system-messages {
          margin: 5em }
        
        div.system-messages h1 {
          color: red }
        
        div.system-message {
          border: medium outset ;
          padding: 1em }
        
        div.system-message p.system-message-title {
          color: red ;
          font-weight: bold }
        
        div.topic {
          margin: 2em }
        
        h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
        h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
          margin-top: 0.4em }
        
        h1.title {
          text-align: center }
        
        h2.subtitle {
          text-align: center }
        
        hr.docutils {
          width: 75% }
        
        img.align-left, .figure.align-left, object.align-left {
          clear: left ;
          float: left ;
          margin-right: 1em }
        
        img.align-right, .figure.align-right, object.align-right {
          clear: right ;
          float: right ;
          margin-left: 1em }
        
        img.align-center, .figure.align-center, object.align-center {
          display: block;
          margin-left: auto;
          margin-right: auto;
        }
        
        .align-left {
          text-align: left }
        
        .align-center {
          clear: both ;
          text-align: center }
        
        .align-right {
          text-align: right }
        
        /* reset inner alignment in figures */
        div.align-right {
          text-align: inherit }
        
        /* div.align-center * { */
        /*   text-align: left } */
        
        ol.simple, ul.simple {
          margin-bottom: 1em }
        
        ol.arabic {
          list-style: decimal }
        
        ol.loweralpha {
          list-style: lower-alpha }
        
        ol.upperalpha {
          list-style: upper-alpha }
        
        ol.lowerroman {
          list-style: lower-roman }
        
        ol.upperroman {
          list-style: upper-roman }
        
        p.attribution {
          text-align: right ;
          margin-left: 50% }
        
        p.caption {
          font-style: italic }
        
        p.credits {
          font-style: italic ;
          font-size: smaller }
        
        p.label {
          white-space: nowrap }
        
        p.rubric {
          font-weight: bold ;
          font-size: larger ;
          color: maroon ;
          text-align: center }
        
        p.sidebar-title {
          font-family: sans-serif ;
          font-weight: bold ;
          font-size: larger }
        
        p.sidebar-subtitle {
          font-family: sans-serif ;
          font-weight: bold }
        
        p.topic-title {
          font-weight: bold }
        
        pre.address {
          margin-bottom: 0 ;
          margin-top: 0 ;
          font: inherit }
        
        pre.literal-block, pre.doctest-block, pre.math, pre.code {
          margin-left: 2em ;
          margin-right: 2em }
        
        pre.code .ln { /* line numbers */
          color: grey;
        }
        
        .code {
          background-color: #eeeeee
        }
        
        span.classifier {
          font-family: sans-serif ;
          font-style: oblique }
        
        span.classifier-delimiter {
          font-family: sans-serif ;
          font-weight: bold }
        
        span.interpreted {
          font-family: sans-serif }
        
        span.option {
          white-space: nowrap }
        
        span.pre {
          white-space: pre }
        
        span.problematic {
          color: red }
        
        span.section-subtitle {
          /* font-size relative to parent (h1..h6 element) */
          font-size: 80% }
        
        table.citation {
          border-left: solid 1px gray;
          margin-left: 1px }
        
        table.docinfo {
          margin: 2em 4em }
        
        table.docutils {
          margin-top: 0.5em ;
          margin-bottom: 0.5em }
        
        table.footnote {
          border-left: solid 1px black;
          margin-left: 1px }
        
        table.docutils td, table.docutils th,
        table.docinfo td, table.docinfo th {
          padding-left: 0.5em ;
          padding-right: 0.5em ;
          vertical-align: top }
        
        table.docutils th.field-name, table.docinfo th.docinfo-name {
          font-weight: bold ;
          text-align: left ;
          white-space: nowrap ;
          padding-left: 0 }
        
        h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
        h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
          font-size: 100% }
        
        ul.auto-toc {
          list-style-type: none }
        
        </style>
        </head>
        <body>
        <div class="document">
        
        
        <div class="section" id="introduction">
        <h1>Introduction</h1>
        <p><a class="reference external" href="http://developer.berlios.de/projects/pyclp/">PyCLP</a>
        is a Python library to interface ECLiPSe Constraint Programmig System.</p>
        <p>This module try to implement a pythonic interface to <a class="reference external" href="http://www.eclipseclp.org/">ECLiPSe</a>
        (alias easy to use) by compromising on a little bit on performance.</p>
        <div class="section" id="major-differences-from-eclipse-standard-interface-libraries">
        <h2>Major differences from ECLiPSe standard interface libraries</h2>
        <p>The main difference compared to embedded interface provided by ECLiPSe system is
        the persistence of constructed terms after calling the pyclp.resume() (check
        <a class="reference external" href="http://www.eclipseclp.org/doc/embedding/embroot008.html#toc11">3.1.2  Building ECLiPSe terms</a> ) function.
        In ECLiPSe standard interfaces compound terms are destroyed after resume while in PyCLP are
        stored in a reference that survive after resuming. PyCLP will destroy the refence only when python
        destroys the corrisponded python object (garbage collection). This consumes more memory but the now
        the python object and teh corrispondent ECLiPSe object have the same <em>lifetime</em>.</p>
        <p>Moreover, in the definition of the API I tried to take advantage of a common propety of python and
        ECLiPSe: both are weak typed languages.</p>
        </div>
        </div>
        <div class="section" id="installation">
        <h1>Installation</h1>
        <p>At this moment only Linux platform is supported.(tested on Ubuntu 12.04).</p>
        <div class="section" id="linux">
        <h2>Linux</h2>
        <p>In this page it is explained how to compile and install from source in a Linux Platform</p>
        <div class="section" id="requirments">
        <h3>Requirments</h3>
        <p>Following packages shall be preinstalled before proceeding the installation of PyCLP</p>
        <ul class="simple">
        <li><a class="reference external" href="http://www.python.org/">Python 3.x</a></li>
        <li><a class="reference external" href="http://www.cython.org/">Cython</a></li>
        <li><a class="reference external" href="http://www.eclipseclp.org/">ECLiPSe Constraint Programming System</a></li>
        </ul>
        </div>
        <div class="section" id="download">
        <h3>Download</h3>
        <p>Download source files from <a class="reference external" href="http://developer.berlios.de/project/showfiles.php?group_id=12904">PyCLP sources</a></p>
        </div>
        <div class="section" id="compilation-installation">
        <h3>Compilation &amp; Installation</h3>
        <p>Setup Enviromental variables for ECLiPSe:</p>
        <p><strong>ECLIPSEDIR</strong> enviromental variable shall be set to the folder where is located ECLiPSe system.
        This is required for compiling and using PyCLP.</p>
        <p><strong>LD_LIBRARY_PATH</strong> enviromental variable shall contains the path of folder that contains
        the ECLiPSe sharable library. E.g. &lt;eclipsedir&gt;/lib/i386_linux.</p>
        <p>Install using usual method</p>
        <pre class="code bash literal-block">
        sudo python setup.py install
        </pre>
        <p>Regression test</p>
        <pre class="code bash literal-block">
        python test.py
        </pre>
        </div>
        </div>
        <div class="section" id="windows">
        <h2>Windows</h2>
        <div class="section" id="binary-installation">
        <h3>Binary installation</h3>
        <div class="section" id="id1">
        <h4>Requirments</h4>
        <p>Following packages shall be preinstalled before proceeding the installation of PyCLP</p>
        <ul class="simple">
        <li><a class="reference external" href="http://www.python.org/">Python 3.x</a></li>
        <li><a class="reference external" href="http://www.eclipseclp.org/">ECLiPSe Constraint Programming System</a></li>
        </ul>
        </div>
        <div class="section" id="enviroment-variables">
        <h4>Enviroment variables</h4>
        <p>Setup Enviromental variables for ECLiPSe:</p>
        <p><strong>ECLIPSEDIR</strong> enviromental variable shall be set to the folder where is located ECLiPSe system.
        This is required for compiling and using PyCLP.</p>
        <p><strong>PATH</strong> add in the path the folder where is stored the <em>eclipse.dll</em> file</p>
        </div>
        <div class="section" id="download-install">
        <h4>Download &amp; Install</h4>
        <p>Download msi installer from <a class="reference external" href="http://developer.berlios.de/project/showfiles.php?group_id=12904">PyCLP sources</a></p>
        </div>
        </div>
        <div class="section" id="installation-from-sources">
        <h3>Installation from sources</h3>
        <div class="section" id="id5">
        <h4>Requirments</h4>
        <p>Following packages shall be preinstalled before proceeding the installation of PyCLP</p>
        <ul class="simple">
        <li><a class="reference external" href="http://www.python.org/">Python 3.x</a></li>
        <li><a class="reference external" href="http://www.cython.org/">Cython</a></li>
        <li><a class="reference external" href="http://www.eclipseclp.org/">ECLiPSe Constraint Programming System</a></li>
        </ul>
        </div>
        <div class="section" id="id9">
        <h4>Download</h4>
        <p>Download source files from <a class="reference external" href="http://developer.berlios.de/project/showfiles.php?group_id=12904">PyCLP sources</a></p>
        </div>
        <div class="section" id="id11">
        <h4>Compilation &amp; Installation</h4>
        <p>Setup Enviromental variables for ECLiPSe:</p>
        <p><strong>ECLIPSEDIR</strong> enviromental variable shall be set to the folder where is located ECLiPSe system.
        This is required for compiling and using PyCLP.</p>
        <p><strong>PATH</strong> add in the path the folder where is stored the <em>eclipse.dll</em> file</p>
        <p>Install using usual method</p>
        <pre class="code bash literal-block">
        python setup.py install
        </pre>
        <p>Regression test</p>
        <pre class="code bash literal-block">
        python test.py
        </pre>
        </div>
        </div>
        </div>
        </div>
        </div>
        </body>
        </html>
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Prolog
