Programming with prototypes is an alternative to using class-based
object systems. See Also edit
- On things, by RS
- artificial intelligence
Further Reading edit
- Wikipedia
- C2
- The Universal Design Pattern, [1], 2008-10-20
- An explanation of the Properties Pattern.
- Organizing Programs Without Classes, Ungar et al, Lisp and Symbolic Computation 1991
- Born of the the Self project.
Tcl Prototype Systems edit
- Prototype Pattern in Tcl
- A simple prototype implementation by EKB, and an example by DKF of how to do it in 8.6 with TclOO
- Selfish, by Setok
- another minimal tcl object system (XOTcl like syntax)
- BOS
- dicthash: Yet another lightweight object system
- Poet
- Prototype Object Extension for Tcl. Features prototype-based inheritance, constrainst, and persistence.
- Prototype Pattern in Tcl
- includes a short and sweet TclOO implementation of Steve Yegge's Prototype Pattern
- SELF extension
- Inspired by SELF Uses objects that only have slots.
- Snit's Not Incr Tcl
- a pure-Tcl object framework which relies on object composition and delegation rather than object inheritance
- framesets
- Frameset based OO implemention for Tcl.
- theObjects
- Small prototype-oriented object system.
- Yet another object system
- does everything with lists.
- SDynObject
- a pure Tcl system that is very simple and extensible.
- Procs as objects
- does it with default arguments to procs, instance variables might be kept in alias only.
- TOE
- an extension to the Tcl programming language that enables object-oriented (OO) programming in a class-based, Java-like style. Toe provides commands that allow a Tcl scripting programmer to create OO classes, define functional relationships between classes, run Tcl code in objects created from the classes, and implement various multiple-class patterns that are well-known in the object-oriented paradigm.
- TWO
- Tcl With Objects. Author wrote it because I felt that existing object extensions to TCL either were so complex they were difficult to port and to debug, or they made member variable access unnecessarily complex
- UFO (yet another pure tcl OOS), by MS
- an unfriendly [sic] but powerful prototype-based object system
- ycl::context, by PYK
- Features cascading variable and command access. A predecessor to ycl shelf.
- ycl ns dupensemble
- Instantiate objects duplicating namespaces.
- ycl::ns::object, by PYK
- like ycl::context, but implemented in less code, taking advantage of the nuances namespace functionality. Cascading variable and command access. Methods are subcommands of a namespace ensemble, and use [info level 0] to bind to an object when called. Upmethods bind to an object by using [upvar 1...], and [upvar 2...] is the caller of the method. Also a predecessor to ycl shelf.
- ycl shelf
- Provides a reasonably-well-equipped prototype from which to begin. Utilizes ycl ns dupensemble.
Non-Tcl Prototype Languages edit
- Self Programming Language