1
<?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 lang="en" xmlns="http://www.w3.org/1999/xhtml">
3
<title>Twisted Documentation: Historical Documents</title>
4
<link href="howto/stylesheet.css" rel="stylesheet" type="text/css"/>
8
<h1 class="title">Historical Documents</h1>
9
<div class="toc"><ol><li><a href="#auto0">2003</a></li><ul><li><a href="#auto1">Python Community Conference</a></li></ul><li><a href="#auto2">Previously</a></li></ol></div>
13
<p>Here are documents which contain no pertinent information or documentation.
14
People from the Twisted team have published them, and they serve as interesting
15
land marks and thoughts. Please don't look here for documentation -- however,
16
if you are interested in the history of Twisted, or want to quote from these
17
documents, feel free. Remember, however -- the documents here may contain
18
wrong information -- they are not updated as Twisted is, to keep their
19
historical value intact.</p>
21
<h2>2003<a name="auto0"/></h2>
22
<h3>Python Community Conference<a name="auto1"/></h3>
24
<p>These papers were part of the <a href="http://python.org/pycon/" shape="rect">Python Community Conference</a> (PyCon) in March of 2003.</p>
29
<dt><a href="2003/pycon/deferex.html" shape="rect"><cite>Generalization of Deferred Execution in Python</cite></a></dt>
31
<dd><p>A deceptively simple architectural challenge faced by many
32
multi-tasking applications is gracefully doing nothing. Systems that
33
must wait for the results of a long-running process, network message, or
34
database query while continuing to perform other tasks must establish
35
conventions for the semantics of waiting. The simplest of these is
36
blocking in a thread, but it has significant scalability problems. In
37
asynchronous frameworks, the most common approach is for long-running
38
methods to accept a callback that will be executed when the command
39
completes. These callbacks will have different signatures depending on
40
the nature of the data being requested, and often, a great deal of code
41
is necessary to glue one portion of an asynchronous networking system to
42
another. Matters become even more complicated when a developer wants to
43
wait for two different events to complete, requiring the developer to
44
"juggle" the callbacks and create a third, mutually incompatible
45
callback type to handle the final result.</p>
47
<p>This paper describes the mechanism used by the Twisted framework for
48
waiting for the results of long-running operations. This mechanism,
49
the <code>Deferred</code>, handles the often-neglected problems of
50
error handling, callback juggling, inter-system communication and code
53
<dt><a href="2003/pycon/applications/applications.html" shape="rect"><cite>Applications of the Twisted Framework</cite></a></dt>
55
<dd><p>Two projects developed using the Twisted framework are described;
56
one, Twisted.names, which is included as part of the Twisted
57
distribution, a domain name server and client API, and one, Pynfo, which
58
is packaged separately, a network information robot.</p></dd>
60
<dt><a href="2003/pycon/conch/conch.html" shape="rect"><cite>Twisted.Conch: SSH in Python with Twisted</cite></a></dt>
62
<dd><p>Conch is an implementation of the Secure Shell Protocol (currently
63
in the IETF standarization process). Secure Shell (or SSH) is a popular
64
protocol for remote shell access, file management and port forwarding
65
protected by military-grade security. SSH supports multiple encryption and
66
compression protocols for the wire transports, and a flexible system of
67
multiplexed channels on top. Conch uses the Twisted networking framework
68
to supply a library which can be used to implement both SSH clients and
69
servers. In addition, it also contains several ready made client programs,
70
including a drop-in replacement for the OpenSSH program from the OpenBSD
73
<dt><a href="2003/pycon/lore/lore.html" shape="rect"><cite>The Lore Document Generation Framework</cite></a></dt>
75
<dd><p>Lore is a documentation generation system which uses a limited
76
subset of XHTML, together with some class attributes, as its source
77
format. This allows for lower barrier of entry than many other similar
78
systems, since HTML authoring tools are plentiful as is knowledge of
79
HTML writing. As an added advantage, the source format is viewable
80
directly, so that even if Lore is not available the documentation is
81
useful. It currently outputs LaTeX and HTML, which allows for most
84
<dt><a href="2003/pycon/pb/pb.html" shape="rect"><cite>Perspective Broker: <q>Translucent</q> Remote Method calls in Twisted</cite></a></dt>
86
<dd><p>One of the core services provided by the Twisted networking
87
framework is <q>Perspective Broker</q>, which provides a clean, secure,
88
easy-to-use Remote Procedure Call (RPC) mechanism. This paper explains the
89
novel features of PB, describes the security model and its implementation,
90
and provides brief examples of usage.</p></dd>
92
<dt><a href="2003/pycon/releasing/releasing.html" shape="rect"><cite>Managing the Release of a Large Python Project</cite></a></dt>
94
<dd><p>Twisted is a Python networking framework. At last count, the
95
project contains nearly 60,000 lines of effective code (not comments or
96
blank lines). When preparing a release, many details must be checked, and
97
many steps must be followed. We describe here the technologies and tools
98
we use, and explain how we built tools on top of them which help us make
99
releasing as painless as possible.</p></dd>
101
<dt><a href="2003/pycon/twisted-reality/twisted-reality.html" shape="rect"><cite>Twisted Reality: A Flexible Framework for Virtual Worlds</cite></a></dt>
103
<dd><p>Flexibly modelling virtual worlds in object-oriented languages has
104
historically been difficult; the issues arising from multiple
105
inheritance and order-of-execution resolution have limited the
106
sophistication of existing object-oriented simulations. Twisted
107
Reality avoids these problems by reifying both actions and
108
relationships, and avoiding inheritance in favor of automated
109
composition through adapters and interfaces.</p></dd>
112
<h2>Previously<a name="auto2"/></h2>
115
<li><a href="ipc10paper.html" shape="rect">The paper Glyph and Moshe presented in
117
<li><a href="ipc10errata.html" shape="rect">The errata published in IPC10 against the
119
<li><a href="twisted-debian.html" shape="rect">A paper Moshe wrote about Twisted and
125
<p><a href="howto/index.html">Index</a></p>
126
<span class="version">Version: 10.0.0</span>
b'\\ No newline at end of file'