<?xml version="1.0" encoding="UTF-8"?>
<event>
<ID>13919</ID>
<category>Conferences</category>
<parentProtection>false</parentProtection>
<materialList>[["minutes", "Minutes"], ["notes", "Notes"], ["paper", "Paper"], ["poster", "Poster"], ["slides", "Slides"], ["summary", "Summary"]]</materialList>
<announcer>
 <user>
  <title></title>
  <name first="Benedikt" middle="" last="Hegner"></name>
  <organization>CERN</organization>
  <email>benedikt.hegner@cern.ch</email>
  <userid>1363</userid>
 </user>
</announcer>
<supportEmail caption="Support">europython@python.org</supportEmail>
<title>EuroPython 2007</title>
<description>&lt;h2&gt;What&lt;/h2&gt;

&lt;p&gt;EuroPython is an annual volunteer-run conference for the Python and Zope communities, taking place at different sites in Europe. Having started in Charleroi in Belgium, it moved to Göteborg in Sweden, and then CERN in Switzerland. EuroPython 2007 will take place in Vilnius, Lithuania.&lt;/p&gt;

&lt;h2&gt;Who&lt;/h2&gt;

&lt;p&gt;EuroPython brings together developers, designers and business people in the Python and Zope communities. You will meet people who have just begun their journey into this world as well as the people who started it all.&lt;/p&gt;

&lt;h2&gt;Why&lt;/h2&gt;

&lt;p&gt;EuroPython provides inspirational talks and a friendly atmosphere, designed to help people build contacts and learn from each others experiences. You will meet interesting people, have a pleasant time and get to see Vilnius in its best season.&lt;/p&gt;</description>
<participants></participants>
<closed>False</closed>
<location>
 <name>Vilnius, Lithuania</name>
 <address></address>
 <room></room>
</location>
<startDate>2007-07-09T08:00:00</startDate>
<endDate>2007-07-11T20:00:00</endDate>
<creationDate>2007-03-14T18:23:19</creationDate>
<modificationDate>2012-03-01T11:09:04</modificationDate>
<timezone>Europe/Zurich</timezone>
<chair>
 <user>
  <title></title>
  <name first="Benedikt" middle="" last="Hegner"></name>
  <organization>DESY - Deutsches Elektronen-Synchrotron</organization>
  <email>benedikt.hegner@cern.ch</email>
 </user>
</chair>
<contribution color="#CCFFCC" textcolor="#000000">
 <ID>44</ID>
 <parentProtection>false</parentProtection>
 <materialList>[["minutes", "Minutes"], ["notes", "Notes"], ["paper", "Paper"], ["poster", "Poster"], ["slides", "Slides"], ["summary", "Summary"]]</materialList>
 <title>Pythonic Interfaces</title>
 <speakers>
  <user>
   <title>Mr.</title>
   <name first="Michael" middle="" last="Hawker"></name>
   <organization>McGill University / Mikeware</organization>
   <email>michael.hawker@mail.mcgill.ca</email>
  </user>
 </speakers>
 <primaryAuthors>
  <user>
   <title>Mr.</title>
   <name first="Michael" middle="" last="Hawker"></name>
   <organization>McGill University / Mikeware</organization>
   <email>michael.hawker@mail.mcgill.ca</email>
  </user>
 </primaryAuthors>
 <location>
  <name>Vilnius, Lithuania</name>
  <address></address>
  <room>Theta</room>
 </location>
 <startDate>2007-07-09T10:00:00</startDate>
 <endDate>2007-07-09T10:30:00</endDate>
 <duration>00:30</duration>
 <abstract>With the evolution of computer systems, software development has become increasingly more complex. One way to deal with this increased complexity is through the use of software libraries. Many object-oriented languages provide special constructs such as abstract classes and interfaces which ensure that components are properly extended and executed. Unfortunately, the Python programming language is devoid of such features. In this article, we present a library extension for Python to include these features into the language and allow for explicit class interfaces and abstract classes.  While it has been attempted before, our library provides a simple, elegant, and Pythonic solution to the problem via a pure-Python stand-alone library.  By extending the Python language in this manner, we allow developers to define concrete models for libraries and create modular code, while ensuring that software system designs are enforced at run time. We also argue that this provides the Python language another degree of flexibility in a formalized mechanic, as opposed to error-prone traditional “hand-shake” contracts. The usability of our proposed Python extension is demonstrated in a case study of an original game engine framework.</abstract>
 <material>
  <ID>paper</ID>
  <title>Paper</title>
  <description></description>
  <type></type>
  <files>
  </files>
  <types>
   <type>
    <name>doc</name>
    <imgURL>http://indico.cern.ch/images/word.png</imgURL>
    <imgAlt>word file</imgAlt>
   </type>
   <type>
    <name>ppt</name>
    <imgURL>http://indico.cern.ch/images/powerpoint.png</imgURL>
    <imgAlt>powerpoint file</imgAlt>
   </type>
   <type>
    <name>pdf</name>
    <imgURL>http://indico.cern.ch/images/pdf_small.png</imgURL>
    <imgAlt>pdf file</imgAlt>
   </type>
   <type>
    <name>odt</name>
    <imgURL>http://indico.cern.ch/images/writer.png</imgURL>
    <imgAlt>writer file</imgAlt>
   </type>
   <type>
    <name>odp</name>
    <imgURL>http://indico.cern.ch/images/impress.png</imgURL>
    <imgAlt>presentation file</imgAlt>
   </type>
   <type>
    <name>ods</name>
    <imgURL>http://indico.cern.ch/images/calc.png</imgURL>
    <imgAlt>spreadsheet file</imgAlt>
   </type>
   <type>
    <name>other</name>
    <imgURL>http://indico.cern.ch/images/file_small.png</imgURL>
    <imgAlt>unknown type file</imgAlt>
   </type>
   <type>
    <name>link</name>
    <imgURL>http://indico.cern.ch/images/link.png</imgURL>
    <imgAlt>link</imgAlt>
   </type>
  </types>
 </material>
</contribution>
<plugins>
 <collaboration>
<!-- Needed for timezone awareness -->
  <todayReference>2013-06-20</todayReference>
  <tomorrowReference>2013-06-21</tomorrowReference>
 </collaboration>
</plugins>
</event>
