<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://lambda-the-ultimate.org">
<channel>
 <title>Lambda the Ultimate - Python</title>
 <link>http://lambda-the-ultimate.org/taxonomy/term/26/0</link>
 <description></description>
 <language>en</language>
<item>
 <title>Skipping C - SPE and synthetic programming in Python</title>
 <link>http://lambda-the-ultimate.org/node/2398</link>
 <description>&lt;p &gt;&lt;a href=&quot;http://www.corepy.org/pdfs/syn-expr-chris-mueller.pdf&quot;&gt;Expression and Loop Libraries for High-Performance Code Synthesis&lt;/a&gt;. Christopher Mueller and Andrew Lumsdaine. LCPC2006.&lt;/p&gt;
&lt;blockquote &gt;&lt;p &gt;To simultaneously provide rapid application development and high performance, developers of scientific and multimedia applications often mix languages, using scripting languages to glue together high-performance components written in compiled languages. While this can be a useful development strategy, it distances application developers from the optimization process while adding complexity to the development tool chain. Recently, we introduced the Synthetic Programming Environment (SPE) for Python, a library for generating and executing machine instructions at run-time.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p &gt;The authors didn&#039;t show much interest yet in supporting the most widespread ISAs, those for Intel processors. Instead they focus on PowerPC but also Cell. Have fun with Python and PS3 hacking.&lt;/p&gt;
&lt;p &gt;&lt;i &gt;Edit: You might also checkout the &lt;a href=&quot;http://www.osl.iu.edu/~chemuell/new/sp.php&quot;&gt;site&lt;/a&gt; of Christopher Mueller containing related material.&lt;/i&gt;&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/24">DSL</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Tue, 14 Aug 2007 04:11:16 -0400</pubDate>
</item>
<item>
 <title>Google Python Sprint 2007</title>
 <link>http://lambda-the-ultimate.org/node/2396</link>
 <description>&lt;p &gt;Joining this &lt;a href=&quot;http://wiki.python.org/moin/GoogleSprint&quot;&gt;event&lt;/a&gt; (August 22-25) or following the action from afar may be a good way to keep up with Python 3000.&lt;p &gt;
The first alpha release (3.0a1) should be just around the corner.&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Mon, 13 Aug 2007 17:37:28 -0400</pubDate>
</item>
<item>
 <title>Python 3000 Status Update</title>
 <link>http://lambda-the-ultimate.org/node/2302</link>
 <description>&lt;p &gt;
Guido &lt;a href=&quot;http://www.artima.com/weblogs/viewpost.jsp?thread=208549&quot;&gt;updates&lt;/a&gt; the vision.  Syntax focus seems cancerous, leaving FP sandwiched between set literals and backtick syntax, under Miscellany:

&lt;blockquote &gt;
&lt;ul &gt;
&lt;li &gt;
reduce() is gone. This doesn&#039;t mean I don&#039;t like higher-order functions; it simply reflects that almost all code that uses reduce() becomes more readable when rewritten using a plain old for-loop. (&lt;a href=&quot;http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/148061&quot;&gt;Example&lt;/a&gt;.)
&lt;/li&gt;
&lt;li &gt;
lambda, however, lives.
&lt;/li&gt;
&lt;/blockquote&gt;
&lt;/p&gt;

&lt;p &gt;
Guido says that example &quot;gives reduce() a bad name&quot; which leaves me wondering as to its relevance.  The idea that FP = Miscellany makes me wonder why the more stunning Python success stories (Google) involve FP techniques.  Elsewhere:

&lt;blockquote &gt;
&lt;ul &gt;
&lt;li &gt;
zip(), map(), filter() return iterables
&lt;/li&gt;
&lt;/blockquote&gt;
&lt;/p&gt;

&lt;p &gt;
So FP is not even a free-standing category yet.  I sometimes wish &lt;a href=&quot;http://plt-spy.sourceforge.net&quot;&gt;PLT Spy&lt;/a&gt; would revive, or that some FP language would target Python intermediate code.  The value of Python is often stated to be its libraries.
&lt;/p&gt;

&lt;p &gt;
I also wonder if Python people might build intuition by watching REBOL (=Lisp) people at work.  They seem to enjoy puzzles.  The motivating notion would be &quot;hey! that REBOL trick should be so easy in Python.&quot;
&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Wed, 20 Jun 2007 03:19:48 -0400</pubDate>
</item>
<item>
 <title>Python in Pardus Linux</title>
 <link>http://lambda-the-ultimate.org/node/2301</link>
 <description>&lt;p &gt;
&lt;a href=&quot;http://www.pardus.org.tr/eng/projects/comar/PythonInPardus.html&quot;&gt;Pardus Linux&lt;/a&gt; is a case study of functional Python.  It&#039;s a Linux distribution built from semi-scratch, the main focii being &lt;a href=&quot;http://www.pardus.org.tr/eng/projects/pisi/PiSi.html&quot;&gt;package management&lt;/a&gt; and init subsystems - places where C and shell script make poor sense.  A funded group has finally tackled these issues.
&lt;/p&gt;

&lt;p &gt;
&lt;blockquote &gt;
A package management software deals a lot with sets, lists, and dependency graphs....We have extensively used functional operators (map, filter, reduce) and list comprehensions, even metaclasses are used in a few places.
&lt;/blockquote&gt;
&lt;/p&gt;

&lt;p &gt;
Someone nudge Guido.  Scheme or Oz might have been the better choice, but give them credit.  They admit frankly to social acceptance issues.
&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/13">Logic/Declarative</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/12">Object-Functional</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/27">XML</category>
 <pubDate>Tue, 19 Jun 2007 18:55:33 -0400</pubDate>
</item>
<item>
 <title>Charming Python: Decorators make magic easy</title>
 <link>http://lambda-the-ultimate.org/node/1961</link>
 <description>&lt;blockquote &gt;&lt;p &gt;
Python made metaprogramming possible, but each Python version has added slightly different -- and not quite compatible -- wrinkles to the way you accomplish metaprogramming tricks. Playing with first-class function objects has long been around, as have techniques for peaking and poking at magic attributes. With version 2.2, Python grew a custom metaclass mechanism that went a long way, but at the cost of melting users&#039; brains. More recently, with version 2.4, Python has grown &quot;decorators,&quot; which are the newest -- and by far the most user-friendly way, so far -- to perform most metaprogramming.&lt;/blockquote&gt;
&lt;p &gt;
While metaprogramming is inherently a bit confusing, I think &lt;a href=&quot;http://www-128.ibm.com/developerworks/linux/library/l-cpdecor.html&quot;&gt;this article&lt;/a&gt; could have a been a little clearer. Still, it&#039;s a nice highlevel introduction to decorators. &lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/15">Meta-Programming</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Fri, 05 Jan 2007 09:40:42 -0500</pubDate>
</item>
<item>
 <title>Type inference for Python</title>
 <link>http://lambda-the-ultimate.org/node/1519</link>
 <description>&lt;p &gt;The subject of type inference for dynamically-checked languages came up in the &lt;a href=&quot;http://lambda-the-ultimate.org/node/1514&quot;&gt;Buried Treasure&lt;/a&gt; thread.  A &lt;a href=&quot;http://lambda-the-ultimate.org/node/1514#comment-17614&quot;&gt;question was raised&lt;/a&gt; in that thread having to do with why static type inference in these languages is difficult.  Since there&#039;s a nascent body of literature which addresses that question, here are a few links to articles and papers about type inference for Python.&lt;/p&gt;
&lt;p &gt;A nice overview can be found in &lt;a href=&quot;http://groups.google.com/group/comp.lang.python/msg/114a25d394769591&quot;&gt;Localized Type Inference of Atomic Types in Python&lt;/a&gt;, a Master&#039;s thesis by Brett Cannon.  The whole thesis is relevant, but for an overview of the issues, see Chapter 3, &quot;Challenges of Inferring Types in Python&quot;.  Chapter 4 summarizes previous attempts involving static inference in Python, including &lt;a href=&quot;http://psyco.sourceforge.net/&quot;&gt;Psyco&lt;/a&gt; (&lt;a href=&quot;http://lambda-the-ultimate.org/classic/message4635.html&quot;&gt;previously&lt;/a&gt; on LtU) and &lt;a href=&quot;http://lambda-the-ultimate.org/classic/message11635.html&quot;&gt;Starkiller&lt;/a&gt;.  The limitations of these attempts are briefly addressed.&lt;/p&gt;
&lt;p &gt;Type inference solutions for Python invariably involve restrictions to make the problem tractable.  The above paper focuses on &quot;inferring atomic types in the local namespace&quot;.  Another approach is described in &lt;a href=&quot;http://www.python.org/workshops/2000-01/proceedings/papers/aycock/aycock.html&quot;&gt;Aggressive Type Inference&lt;/a&gt;, by John Aycock.  Aycock makes an important observation:&lt;/p&gt;
&lt;blockquote &gt;&lt;p &gt;
Giving people a dynamically-typed language does not mean that they write dynamically-typed programs.
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p &gt;The article offers a type inference approach which exploits this observation.  (If the meaning of the above quote isn&#039;t clear, I recommend reviewing our mammoth three-part thread on the subject, &quot;Why type systems are interesting&quot;, &lt;a href=&quot;http://lambda-the-ultimate.org/node/100&quot;&gt;part I&lt;/a&gt;, &lt;a href=&quot;http://lambda-the-ultimate.org/node/175&quot;&gt;part II&lt;/a&gt;, and &lt;a href=&quot;http://lambda-the-ultimate.org/node/220&quot;&gt;part III&lt;/a&gt;.)&lt;/p&gt;
&lt;p &gt;The &lt;a href=&quot;http://codespeak.net/pypy/dist/pypy/doc/news.html&quot;&gt;PyPy&lt;/a&gt; implementation of Python in Python (&lt;a href=&quot;http://lambda-the-ultimate.org/node/1260&quot;&gt;previously&lt;/a&gt; on LtU) uses a restricted subset of Python, called RPython, to implement parts of the language.  RPython is sufficiently static to be able to support full-program type inference.  It is not a &quot;soft&quot; inference approach, and is not designed to be used with ordinary Python programs.  The paper &lt;a href=&quot;http://codespeak.net/pypy/dist/pypy/doc/dynamic-language-translation.html&quot;&gt;Compiling dynamic language implementations&lt;/a&gt; covers the approach used for static analysis of RPython.  The &lt;a href=&quot;http://codespeak.net/pypy/dist/pypy/doc/coding-guide.html&quot;&gt;PyPy Coding Guide&lt;/a&gt;, starting at section 1.4 may also be useful.&lt;/p&gt;
&lt;p &gt;(It may be interesting to note that the PyPy approach is very similar to that used previously for Scheme 48.  The core of Scheme 48 is implemented in PreScheme, a subset of Scheme that supports full-program type inference.)&lt;/p&gt;
&lt;p &gt;Finally, Guido van Rossum has a number of blog entries on the subject of adding optional static typing to Python:&lt;/p&gt;
&lt;ul &gt;
&lt;li &gt;&lt;a href=&quot;http://www.artima.com/weblogs/viewpost.jsp?thread=85551&quot;&gt;Adding Optional Static Typing to Python&lt;/a&gt;
&lt;li &gt;&lt;a href=&quot;http://www.artima.com/weblogs/viewpost.jsp?thread=86641&quot;&gt;Adding Optional Static Typing to Python -- Part II&lt;/a&gt;
&lt;li &gt;&lt;a href=&quot;http://www.artima.com/weblogs/viewpost.jsp?thread=87182&quot;&gt;Optional Static Typing -- Stop the Flames!&lt;/a&gt;
&lt;li &gt;&lt;a href=&quot;http://www.artima.com/weblogs/viewpost.jsp?thread=89161&quot;&gt;Python Optional Typechecking Redux&lt;/a&gt;
&lt;/ul&gt;
&lt;p &gt;If anyone knows of any other good treatments of type inference in Python or similar languages, please post links here.&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/21">Type Theory</category>
 <pubDate>Mon, 29 May 2006 21:54:44 -0400</pubDate>
</item>
<item>
 <title>EasyExtend - Python MetaProgramming</title>
 <link>http://lambda-the-ultimate.org/node/1496</link>
 <description>&lt;p &gt;Just saw &lt;a href=&quot;http://groups.google.com/group/comp.lang.python/browse_thread/thread/6ddbe3537838258c/3053133d67daacbe#3053133d67daacbe&quot;&gt;this announcement&lt;/a&gt; on Google groups / comp.lang.python.&lt;/p&gt;
&lt;blockquote &gt;&lt;p &gt;&lt;a href=&quot;http://www.fiber-space.de/EasyExtend/doc/EE.html&quot;&gt;EasyExtend&lt;/a&gt; is a constructive approach to extend the Python language using pure Python. EasyExtend is developed as a Python framework depending only on tools provided by the CPython interpreter suite ( compiler ) and standard library as well as some pieces of code borrowed from the PyPy project. Opposite to toolkits for writing extension modules in C ( or RPython in future ) the EasyExtend framework is dedicated to extend the language itself by adding new grammar rules and transformation of parse trees. Acting directly on the nodes of syntax trees makes EasyExtend safe and extensible. Moreover the parser and the transformations are considerably fast. While EasyExtend can obviously be used to define &quot;little languages&quot; embedded in Python it can also be used to create Python oriented tools like a code coverage tool based on code generation. For both use-cases examples will be provided.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p &gt;You&#039;ll want to probably want to check out the &lt;a href=&quot;http://www.fiber-space.de/EasyExtend/doc/gallery/gallery.html&quot;&gt;examples&lt;/a&gt;.&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/15">Meta-Programming</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Mon, 22 May 2006 18:37:55 -0400</pubDate>
</item>
<item>
 <title>Python 2.5a1 released</title>
 <link>http://lambda-the-ultimate.org/node/1402</link>
 <description>&lt;p &gt;Python 2.5 seems to be feature complete now and is &lt;a href=&quot;http://www.python.org/download/releases/2.5/&quot;&gt;released&lt;/a&gt; as a first alpha. See &lt;a href=&quot;http://docs.python.org/dev/whatsnew/whatsnew25.html&quot;&gt;here&lt;/a&gt; for a complete list of new features.&lt;/p&gt;
&lt;p &gt;From a language perspective enhanced generators and the new with-statement are probably the most interesting features. For many developers the incorporation of the small relational database &lt;i &gt;sqlite&lt;/i&gt;, the new XML package &lt;i &gt;elementree&lt;/i&gt; and the foreign function interface &lt;i &gt;ctypes&lt;/i&gt; might be the highlights. &lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Thu, 06 Apr 2006 01:42:15 -0400</pubDate>
</item>
<item>
 <title>Class decorators in Python</title>
 <link>http://lambda-the-ultimate.org/node/1389</link>
 <description>&lt;blockquote &gt;&lt;p &gt;Guido resisted the few calling for class decorators, because there wasn&#039;t a clear use case that wasn&#039;t more readable done another way... [but] Guido has conceded, class decorators will make it into some future version of Python.&lt;/blockquote&gt;
&lt;p &gt;
More + links: &lt;a href=&quot;http://www.voidspace.org.uk/python/weblog/arch_d7_2006_03_25.shtml#e287&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/23">Cross language runtimes</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/14">OOP</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Thu, 30 Mar 2006 10:48:05 -0500</pubDate>
</item>
<item>
 <title>Tail call elimination decorator in Python</title>
 <link>http://lambda-the-ultimate.org/node/1331</link>
 <description>&lt;p &gt;&lt;i &gt;Features of a programming language, whether syntactic or semantic, are all part of the language&#039;s user interface. And a user interface can handle only so much complexity or it becomes unusable. This is also the reason why Python will never have continuations, and even why I&#039;m uninterested in optimizing tail recursion.&lt;/i&gt; &lt;/p&gt;
&lt;p &gt;Thus &lt;a href=&quot;http://www.artima.com/forums/flat.jsp?forum=106&amp;amp;thread=147358&quot;&gt;spoke&lt;/a&gt; Guido - as LtU readers &lt;a href=&quot;http://lambda-the-ultimate.org/node/1298&quot;&gt;already&lt;/a&gt; know.&lt;/p&gt;
&lt;p &gt;Now, not even four weeks later, it has become clear that turning tail recursions into iterations can be achieved by an innocent little &lt;a href=&quot;http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/474088&quot;&gt;decorator&lt;/a&gt; in pure Python. No Rube Goldberg machine(s) in sight.&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/11">Functional</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/8">Implementation</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Tue, 28 Feb 2006 02:33:24 -0500</pubDate>
</item>
<item>
 <title>Guido: Language Design Is Not Just Solving Puzzles</title>
 <link>http://lambda-the-ultimate.org/node/1298</link>
 <description>&lt;blockquote &gt;&lt;p &gt;
And there&#039;s the rub: there&#039;s no way to make a Rube Goldberg language feature appear simple. Features of a programming language, whether syntactic or semantic, are all part of the language&#039;s user interface. And a user interface can handle only so much complexity or it becomes unusable. &lt;/blockquote&gt;
&lt;p &gt;
The &lt;a href=&quot;http://www.artima.com/weblogs/viewpost.jsp?thread=147358&quot;&gt;discussion&lt;/a&gt; is about multi-statement lambdas, but I don&#039;t want to discuss this specific issue. What&#039;s more interesting is the discussion of language as a user interface (an interface to &lt;i &gt;what&lt;/i&gt;, you might ask), the underlying assumption that languages have character (e.g., Pythonicity), and the integrated view of  semantics and syntax of  language constructs when thinking about language usability.  &lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Sat, 11 Feb 2006 12:33:11 -0500</pubDate>
</item>
<item>
 <title>PyPy</title>
 <link>http://lambda-the-ultimate.org/node/1260</link>
 <description>&lt;p &gt;&lt;a href=&quot;http://codespeak.net/pypy/dist/pypy/doc/index.html&quot;&gt;PyPy&lt;/a&gt;, the Python implementation written in Python, was mentioned here a couple of times in the past. After it was mentioned in a recent LtU discussion, I took another look, and boy did they make a lot of progress when I wasn&#039;t looking. PyPy can even &lt;a href=&quot;http://codespeak.net/pypy/dist/pypy/doc/getting-started.html#translate-itself-to-lower-level-languages&quot;&gt;compile itself&lt;/a&gt; now... You should check it out again if you are interested in this sort of thing.&lt;p &gt;
There&#039;s even an &lt;a href=&quot;http://codespeak.net/pypy/dist/pypy/doc/theory.html&quot;&gt;introduction&lt;/a&gt; to the techniques used by PyPy, including a nice (but very high level) overview of abstract interpretation.&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/15">Meta-Programming</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Sat, 28 Jan 2006 06:47:49 -0500</pubDate>
</item>
<item>
 <title>MyHDL</title>
 <link>http://lambda-the-ultimate.org/node/1258</link>
 <description>&lt;p &gt;(via Daily Python-URL)&lt;br &gt;
&lt;blockquote &gt;&lt;p &gt;
The key idea behind &lt;a href=&quot;http://myhdl.jandecaluwe.com/doku.php&quot;&gt;MyHDL&lt;/a&gt; is the use of Python generators to model hardware concurrency. Generators are best described as resumable functions. In MyHDL, generators are used in a specific way so that they become similar to always blocks in Verilog or processes in VHDL.
&lt;p &gt;
A hardware module is modeled as a function that returns any number of generators. This approach makes it straightforward to support features such as arbitrary hierarchy, named port association, arrays of instances, and conditional instantiation.&lt;/blockquote&gt;
&lt;p &gt;
&lt;a href=&quot;http://myhdl.jandecaluwe.com/doku.php&quot;&gt;MyHDL&lt;/a&gt; is an open-source package for using Python as a hardware description and verification language. A Verilog converter is also included.&lt;p &gt;
EE Times provides some background on MyHDL in this &lt;a href=&quot;http://www.eetimes.com/news/latest/showArticle.jhtml?articleID=177101584&quot;&gt;article&lt;/a&gt;.&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/24">DSL</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Thu, 26 Jan 2006 11:53:12 -0500</pubDate>
</item>
<item>
 <title>NetKernel - XML processing pipeline</title>
 <link>http://lambda-the-ultimate.org/node/1006</link>
 <description>&lt;p &gt;&lt;em &gt;It rapidly became clear that a single language runtime is too limited for general applications ... as a minimum we needed both a linear-flow language and a recursive tree composition language ... while declarative languages are excellent for rapid assembly of XML operations, they are terrible for expressing business logic and logical flow-control ... Our other declarative language is XML Recursion Language (XRL). XRL is like XInclude with services, in which inclusion references fire service invocations into the URI address space in order to recursively compose an XML document. XRL is an elegant and powerful way of building XHTML applications ... The active URI, in combination with the local NetKernel environment, is a functional program&lt;/em&gt; - &lt;a href=&quot;http://www.xml.com/lpt/a/2005/04/27/netkernel.html&quot;&gt;Introducing NetKernel&lt;/a&gt;.&lt;/p&gt;
&lt;p &gt;&lt;a href=&quot;http://www.1060research.com/netkernel/&quot;&gt;Main site&lt;/a&gt;; &lt;a href=&quot;http://www.1060research.com/netkernel/tour2/system.html&quot;&gt;Tour&lt;/a&gt;.&lt;/p&gt;
&lt;p &gt;It&#039;s another XML pipeline (there&#039;s a Freshmeat project that lets Coccoon apps run in NetKernel), apparently from HP, which might interest people here.&lt;/p&gt;</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/11">Functional</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/13">Logic/Declarative</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/27">XML</category>
 <pubDate>Mon, 26 Sep 2005 14:12:59 -0400</pubDate>
</item>
<item>
 <title>Guido van Rossum:  Building an Open Source Project and Community</title>
 <link>http://lambda-the-ultimate.org/node/948</link>
 <description>A long (close to two hours) &lt;a href=&quot;http://www.itconversations.com/shows/detail545.html&quot;&gt;audio presentation&lt;/a&gt; about Python&#039;s history and philosophy.&lt;p&gt;
LtU readers will find a lot to disagree with (especially in &lt;a href=&quot;http://www.itconversations.com/shows/detail559.html&quot;&gt;part 2&lt;/a&gt;), for instance when Guido discusses dynamic languages and typing. And yet, I think Guido tries to be reasonable, even though I disagree with some of his conclusions.&lt;p&gt;
Be that as it may, this talk provides a useful summary of Python&#039;s history, and some idea about the workings of the Python community. Long time readers will remember that I think language communities play an important, yet under appreciated, role in language evolution and success.</description>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/7">History</category>
 <category domain="http://lambda-the-ultimate.org/taxonomy/term/26">Python</category>
 <pubDate>Mon, 05 Sep 2005 08:04:43 -0400</pubDate>
</item>
</channel>
</rss>
