XOTcl
XOTcl is an object-oriented extension for the Tool Command Language created by Gustaf Neumann and Uwe Zdun. It is a derivative of MIT OTcl. XOTcl is based on a dynamic object system with metaclasses which as influenced by CLOS. Class and method definitions are completely dynamic. XOTcl provides language support for design patterns via filters and decorator mixins. See also * OTcl *incr Tcl * Tcl *Tcllib TCL or Tcl or TCLs may refer to: Business * TCL Technology, a Chinese consumer electronics and appliance company ** TCL Electronics, a subsidiary of TCL Technology * Texas Collegiate League, a collegiate baseball league * Trade Centre Limited ... *C++/Tcl * Itk * Tk References External linksXOTcl Homepage- Extended Object Tcl *Filters as a Language Support for Design Patterns in Object-Oriented Scripting Languages, in: Proceedings of COOTS, San Diego, California, USA, May, 199 [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
OTcl
OTcl usually refers to an object oriented extension of Tcl created by David Wetherall at MIT (hence the name OTcl—short for MIT Object Tcl). It is used in network simulator (NS-2) and usually run under Unix environment.Eitan Altman and Tania JiménezNS Simulator for beginners Lecture notes, 2003-2004, Univ. de Los Andres, Merida, Venezuela and ESSI, Sophia-Antipolis, France This was later extended into XOTcl. OTcl may also refer to the unrelated IXI Object Tcl extension by Dean Sheenan. These object Tcl extensions predate the more popular incr Tcl. Syntax Introduction The reserved word ''Class'' is used to represent class and method of class are declared using word ''instproc''. The variable ''self'' is pointer to the class it is used in and is equivalent to variable ''this'' of C++/Java. The keyword ''-superclass'' is used for defining hierarchy. For example, ''Class Son -superclass Father'' means that ''class Son'' inherits from ''class Father''. To create an instance of cl ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Mixin
In object-oriented programming languages, a mixin (or mix-in) is a class that contains methods for use by other classes without having to be the parent class of those other classes. How those other classes gain access to the mixin's methods depends on the language. Mixins are sometimes described as being "included" rather than "inherited". Mixins encourage code reuse and can be used to avoid the inheritance ambiguity that multiple inheritance can cause (the "diamond problem"), or to work around lack of support for multiple inheritance in a language. A mixin can also be viewed as an interface with implemented methods. This pattern is an example of enforcing the dependency inversion principle. History Mixins first appeared in Symbolics's object-oriented Flavors system (developed by Howard Cannon), which was an approach to object-orientation used in Lisp Machine Lisp. The name was inspired by Steve's Ice Cream Parlor in Somerville, Massachusetts: The owner of the ice cream sho ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Incr Tcl
incr Tcl (commonly stylised as '' ncr Tcl/nowiki>'', and often abbreviated to ''itcl'') is a set of object-oriented Object-oriented programming (OOP) is a programming paradigm based on the concept of " objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ... extensions for the Tcl programming language. It is widely used among the Tcl community, and is generally regarded as industrial strength . Its name is a pun on " C++". Itcl implementations exist as both a package that may be dynamically loaded by a Tcl application, as well as an independent standalone language with its own interpreter. Overview Features Namespace support Itcl allows namespaces to be used for organizing commands and variables. Example: package require Itcl itcl::class Toaster itcl::class SmartToaster set toaster martToaster #auto$toaster toast 2 C code integration It ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Metaclass
In object-oriented programming, a metaclass is a class whose instances are classes. Just as an ordinary class defines the behavior of certain objects, a metaclass defines the behavior of certain classes and their instances. Not all object-oriented programming languages support metaclasses. Among those that do, the extent to which metaclasses can override any given aspect of class behavior varies. Metaclasses can be implemented by having classes be first-class citizens, in which case a metaclass is simply an object that constructs classes. Each language has its own metaobject protocol, a set of rules that govern how objects, classes, and metaclasses interact. Python example In Python, the builtin class type is a metaclass. Consider this simple Python class: class Car: def __init__(self, make: str, model: str, year: int, color: str): self.make = make self.model = model self.year = year self.color = color @property def description(se ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Multi-paradigm Programming Language
Programming paradigms are a way to classify programming languages based on their features. Languages can be classified into multiple paradigms. Some paradigms are concerned mainly with implications for the execution model of the language, such as allowing Side effect (computer science), side effects, or whether the sequence of operations is defined by the execution model. Other paradigms are concerned mainly with the way that code is organized, such as grouping a code into units along with the state that is modified by the code. Yet others are concerned mainly with the style of syntax and grammar. Common programming paradigms include: * imperative programming, imperative in which the programmer instructs the machine how to change its state, ** procedural programming, procedural which groups instructions into procedures, ** object-oriented programming, object-oriented which groups instructions with the part of the state they operate on, * declarative programming, declarative ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Method (computer Science)
A method in object-oriented programming (OOP) is a procedure associated with a message and an object. An object consists of ''state data'' and ''behavior''; these compose an ''interface'', which specifies how the object may be utilized by any of its various consumers. A method is a behavior of an object parametrized by a consumer. Data is represented as properties of the object, and behaviors are represented as methods. For example, a Window object could have methods such as open and close, while its state (whether it is open or closed at any given point in time) would be a property. In class-based programming, methods are defined within a class, and objects are instances of a given class. One of the most important capabilities that a method provides is '' method overriding'' - the same name (e.g., area) can be used for multiple different kinds of classes. This allows the sending objects to invoke behaviors and to delegate the implementation of those behaviors to the receivi ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Scripting Languages
A scripting language or script language is a programming language that is used to manipulate, customize, and automate the facilities of an existing system. Scripting languages are usually interpreted at runtime rather than compiled. A scripting language's primitives are usually elementary tasks or API calls, and the scripting language allows them to be combined into more programs. Environments that can be automated through scripting include application software, text editors, web pages, operating system shells, embedded systems, and computer games. A scripting language can be viewed as a domain-specific language for a particular environment; in the case of scripting an application, it is also known as an extension language. Scripting languages are also sometimes referred to as very high-level programming languages, as they sometimes operate at a high level of abstraction, or as control languages, particularly for job control languages on mainframes. The term ''scripting la ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Tk (programming Language)
Tk is a free and open-source, cross-platform widget toolkit that provides a library of basic elements of GUI widgets for building a graphical user interface (GUI) in many programming languages. Tk provides a number of widgets commonly needed to develop desktop applications, such as button, menu, canvas, text, frame, label, etc. Tk has been ported to run on most flavors of Linux, Mac OS, Unix, and Microsoft Windows. Like Tcl, Tk supports Unicode within the Basic Multilingual Plane, but it has not yet been extended to handle the current extended full Unicode (e.g., UTF-16 from UCS-2 that Tk supports). Tk was designed to be extended, and a wide range of extensions are available that offer new widgets or other capabilities. Since Tcl/Tk 8, it offers "native look and feel" (for instance, menus and buttons are displayed in the manner of "native" software for any given platform). Highlights of version 8.5 include a new theming engine, originally called Tk Tile, but it is now gene ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Tcllib
TCL or Tcl or TCLs may refer to: Business * TCL Technology, a Chinese consumer electronics and appliance company ** TCL Electronics, a subsidiary of TCL Technology * Texas Collegiate League, a collegiate baseball league * Trade Centre Limited, a Crown corporation in Nova Scotia Computing * The Common Link, a KOMpatible bulletin board system for MS-DOS * Transform, clipping, and lighting, a feature of 3D graphics cards * tCL, CAS latency in RAM timings Software * Tcl (Tool Command Language), a computer programming language * Terminal Control Language, used to program Verifone devices * Tiny Core Linux, a minimal Linux operating system * Tymshare Conversational Language, a former experimental interactive language * Transaction Control Language, a family of computer languages used by database systems to control transactions * Think Class Library, a class library for Macintosh featured in THINK C Education * Theological College of Lanka, a theological college in Sri Lanka * ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Decorator Pattern
In object-oriented programming, the decorator pattern is a design pattern that allows behavior to be added to an individual object, dynamically, without affecting the behavior of other objects from the same class. The decorator pattern is often useful for adhering to the Single Responsibility Principle, as it allows functionality to be divided between classes with unique areas of concern as well as to the Open-Closed Principle, by allowing the functionality of a class to be extended without being modified. Decorator use can be more efficient than subclassing, because an object's behavior can be augmented without defining an entirely new object. Overview The ''decorator'' design pattern is one of the twenty-three well-known '' design patterns''; these describe how to solve recurring design problems and design flexible and reusable object-oriented software—that is, objects which are easier to implement, change, test, and reuse. What problems can it solve? * Responsibilitie ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
Design Pattern (computer Science)
In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine code. Rather, it is a description or template for how to solve a problem that can be used in many different situations. Design patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system. Object-oriented design patterns typically show relationships and interactions between classes or objects, without specifying the final application classes or objects that are involved. Patterns that imply mutable state may be unsuited for functional programming languages. Some patterns can be rendered unnecessary in languages that have built-in support for solving the problem they are trying to solve, and object-oriented patterns are not necessarily suitable for non-object-oriented lan ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |
|
CLOS
Clos may refer to: People * Clos (surname) Other uses * CLOS, Command line-of-sight, a method of guiding a missile to its intended target * Clos network, a kind of multistage switching network * Clos (vineyard), a walled vineyard; used in France, Germany and California * an alternative spelling of ''close'' in the name of a Cul-de-sac A dead end, also known as a cul-de-sac (, from French for 'bag-bottom'), no through road or no exit road, is a street with only one inlet or outlet. The term "dead end" is understood in all varieties of English, but the official terminology ... * Common Lisp Object System (CLOS) {{disambiguation ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   |