Incr Tcl

Itcl
Paradigm multi-paradigm: object-oriented, functional, Imperative, event-driven programming
Designed by Michael McLennan
Developer Michael McLennan
First appeared 1993
Stable release
Itcl4.0.0 / 3 February 2013 (2013-02-03)
Typing discipline dynamic typing, everything can be treated as a string
Website incrtcl at sourceforge
Influenced by
Tcl, C++

incr Tcl (commonly stylised as [incr Tcl], and often abbreviated to itcl) is a set of object-oriented 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 {
        variable crumbs 0
        method toast {nslices} {
            if {$crumbs > 50} {
                error "== FIRE! FIRE! =="
            }
            set crumbs [expr $crumbs+4*$nslices]
        }
        method clean {} {
            set crumbs 0
        }
    }
    
    itcl::class SmartToaster {
        inherit Toaster
        method toast {nslices} {
            if {$crumbs > 40} {
                clean
            }
            return [chain $nslices]
        }
    }
    
    set toaster [SmartToaster #auto]
    $toaster toast 2

C code integration

Itcl (like Tcl) has built-in support for the integration of C code into Itcl classes.

Licensing

Itcl follows the same copyright restrictions as Tcl/Tk. You can use, copy, modify and even redistribute this software without any written agreement or royalty, provided that you keep all copyright notices intact. You cannot claim ownership of the software; the authors and their institutions retain ownership, as described in the "license.terms" files included in the standard distribution. For more information please see incrtcl.sourceforge.net/itcl/copyright.html.

See also

References

incr Tcl from the Ground Up by Chad Smith, published in January 2000.

This is a complete reference manual for incr Tcl, covering language fundamentals, OO design issues, overloading, code reuse, multiple inheritance, abstract base classes, and performance issues. Despite its breadth, it follows a tutorial, rather than encyclopedic, approach. This book is out of print as of September 2004.

External links

This article is issued from Wikipedia - version of the 5/21/2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.