For some domains (notably WikiPedia:Interactive_fiction]) it's useful to be able
to define and edit individual objects without the overhead of creating a class
and instantiate it.  This is called WikiPedia:Prototype_based programming.

[http://www.python.org Python] is a cross-platform language which would be a
good development platform for interactive fiction, except that it is
class-based.  One Python library,
[http://www.firthworks.com/roger/cloak/paws/index.html PAWS], can be compared to
other IF platforms at the [http://www.firthworks.com/roger/cloak/paws/index.html
Cloak of Darkness] - comparing the source to the
[http://www.firthworks.com/roger/cloak/hugo/index.html Hugo] source at the same
site shows how combining object definitions and implementations makes for
cleaner code in Hugo.

Fortunately, Python is a very flexible language, and it's possible to fake
prototype-orientation in several ways.  If none of these are enough, Python
could be used as the basis for a similar prototype-based language, as with Mark
Hahn and Ben Collins' [http://www.prothon.org Prothon].

Before comparing implementations, it is useful to list some
PrototypeEvaluationCriteria.

Without further ado, here is a summary of possible approaches:

- PrototypeClassWithMethodWrappers

- PrototypeMetaclass

- PrototypeLanguage

**TODO** These are all stubs.  They'll be filled in soon - promise!

(Wow, did I ever blow that promise.)