A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2001-February/012814.html below:

[Python-Dev] Cool link

[Python-Dev] Cool linkTim Peters tim.one@home.com
Sun, 11 Feb 2001 19:08:37 -0500
Mentioned on c.l.py:

    http://cseng.aw.com/book/related/0,3833,0805311912+20,00.html

This is the full text of "Advanced Programming Language Design", available
online a chapter at a time in PDF format.

Chapter 2 (Control Structures) has a nice intro to coroutines in Simula and
iterators in CLU, including a funky implementation of the latter via C
macros that assumes you can get away with longjmp()'ing "up the stack"
(i.e., jumping back into a routine that has already been longjmp()'ed out
of).  Also an intro to continuations in Io:

    CLU iterators are truly elegant. They are clear and expressive.
    They provide a single, uniform way to program all loops. They
    can be implemented efficiently on a single stack.
    ...
    Io continuations provide a lot of food for thought. They spring
    from an attempt to gain utter simplicity in a programming
    language.  They seem to be quite expressive, but they suffer
    from a lack of clarity.  No matter how often I have stared at
    the examples of Io programming, I have always had to resort to
    traces to figure out what is happening.  I think they are just
    too obscure to ever be valuable.

Of course in the handful of other languages that support them, continuations
are a wizard-level implementation hook for building nicer abstractions.  In
Io you can't even write a loop without manipulating continuations
explicitly.

takes-all-kinds-ly y'rs  - tim




RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4