Glossary — Message For You Sir! v0.2.1 documentation

### Navigation

- index
- modules |
- next |
- previous |
- Message For You Sir! v0.2.1 documentation »

# Glossary

Adapter

  > "In computer programming, the adapter design pattern (often referred to as the wrapper pattern or simply a wrapper) translates one interface for a class into a compatible interface. An adapter allows classes to work together that normally could not because of incompatible interfaces, by providing its interface to clients while using the original interface. The adapter translates calls to its interface into calls to the original interface, and the amount of code necessary to do this is typically small. The adapter is also responsible for transforming data into appropriate forms."

  > —Adapter pattern at Wikipedia

  In this project, this pattern has been formalized by the use of the zope.interface and zope.component packages. zope.interface prvides a method to formally define interfaces independent of their implementations, and zope.component facilitates the creation and registration of adapters when they are necessary.

  You can find more information on the Zope Component Architecture and it's adapter system by reading A Comprehensive Guide to Zope Component Architecture by Baiju M, in particular chapter 4, as well as in the documentation for the zope.interface and zope.component packages. For more general information about adapters, see the Wikipedia page on the adapter pattern.

Adapters
  See Adapter
Backplane

  Todo

  Document term Backplane

Backplanes
  See Backplane
Callable
  In Python, A callable is a generic term for any object that can be called. This is usually a function or a method, but can be any object that defines a `__call__()` method. For more information see the Python documentation on Emulating callable objects
Callables
  See Callable
Component

  Todo

  Document term Component

Components
  See Component
Concurrent

  Todo

  Document term Concurrent

Consumer

  Todo

  Document term Consumer

Consumers
  See Consumer
Container

  Todo

  Document term Container

Coroutine

  > "A coroutine is a generalization of the subroutine. Forget for a moment everything you've been taught about calling functions, and stacks, etc... Think back to BASIC, and the evil GOTO statement. Imagine a more powerful GOTO that could jump back and forth between functions, passing arguments, and you begin to get the idea."

  > "Coroutines are a bit of ancient forgotten computer-science lore; stamped out of the collective memory by the hegemony of C. But they are useful in a wide variety of situations that can only be clumsily solved using 'standard' tools like threads and processes."

  > —Coroutines In Python

  Coroutines in Python are described in PEP 342. There is an excellent presentation on Python coroutines titled A Curious Course on Coroutines and Concurrency by David Beazley. For information on coroutines in general, see the Wikipedia page on coroutines.

Coroutines
  See Coroutine
Factory

  Todo

  Document term Factory

Filter

  Todo

  Document term Filter

Filters
  See Filter
Framework
  For this project, a framework is simply defined as something that calls your code, rather than your code calling it. (As opposed to a library.) For general information on the concept if a framework in software, see the Wikipedia page on software frameworks.
Generator

  > "A generator is, simply put, a function which can stop whatever it is doing at an arbitrary point in its body, return a value back to the caller, and, later on, resume from the point it had `frozen' and merrily proceed as if nothing had happened."

  > —Python Generator Tricks

  Generators in Python are described in PEP 255. There is an excellent presentation on Python generators titled Generator Tricks for Systems Programmers by David Beazley. For information on generators in general, see the Wikipedia page on generators.

Generators
  See Generator
Idempotent

  Todo

  Document term idempotent

Inbox

  Todo

  Document term Inbox

Inboxes
  See Inbox
Interface

  Todo

  Document term Interface

interfaces
  See Interface
Lazy

  Todo

  Document term Lazy

Library
  For this project, a library is simply defined as packaged code that you call in your program. (As opposed to a framework that calls your code for you.) For general information on the concept if a library in software, see the Wikipedia page on libraries.
Link

  Todo

  Document term Link

Links
  See Link
Mailbox

  Todo

  Document term Mailbox

Mailboxes
  See Mailbox
Message

  Todo

  Document term Message

Messages
  See Message
Outbox

  Todo

  Document term Outbox

Outboxes
  See Outbox
Pipeline

  Todo

  Document term Pipeline

Pipelines
  See Pipeline
Post Office

  Todo

  Document term Post Office

Post Offices
  See Post Office
Producer
  For this project, a producer is a coroutine that produces messages to be consumed, but does not consume any messages itself (aside from shutdown messages). For example, reading lines from a files and send them out one at a time. For general information on the concept of a producer, see the Wikipedia page on the Producer-consumer problem.
Producers
  See Producer
Publisher

  Todo

  Document term Publisher

Publishers
  See Publisher
Scheduler

  Todo

  Document term Scheduler

Schedulers
  See Scheduler
Sink

  Todo

  Document term Sink

Source

  Todo

  Document term Source

Subscriber

  Todo

  Document term Subscriber

Subscribers
  See Subscriber

### Navigation

- index
- modules |
- next |
- previous |
- Message For You Sir! v0.2.1 documentation »