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.

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, PAWS, can be compared to other IF platforms at the Cloak of Darkness - comparing the source to the 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' Prothon.

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

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

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

(Wow, did I ever blow that promise.)