Check-in [b619dfd132]

Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Updated the abstract
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: b619dfd132c56d5d59939ed08e7bb598b59221d5ebab08b3d53be07e537cc0d2
User & Date: dkf 2018-05-28 16:17:03.396
Context
2018-05-28
16:23
CFV for 500 by DKF check-in: db83e70e61 user: dkf tags: trunk
16:17
Updated the abstract check-in: b619dfd132 user: dkf tags: trunk
16:08
Clarify private method name interactions. check-in: 413ff82ed0 user: dkf tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Changes to tip/500.md.
1
2
3
4
5
6
7
8
9
10
11
12
13
14



15
16
17
18
19
20
21
# TIP 500: Private Methods and Variables in TclOO
	Author:         Donal K. Fellows <[email protected]>
	State:          Draft
	Type:           Project
	Vote:           Pending
	Created:        10-Feb-2018
	Post-History:
	Keywords:       Tcl, object orientation, visibility
	Tcl-Version:    8.7
-----

# Abstract

This TIP proposes a mechanism for (somewhat) private variables in TclOO.




# Rationale

One of the principles of object oriented programming is that classes should be
isolated from each other. This particularly includes the isolation of a
superclass (which might be in one package) from its subclasses (in other
packages) other than for its published API. The TclOO object system in Tcl 8.6













|
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# TIP 500: Private Methods and Variables in TclOO
	Author:         Donal K. Fellows <[email protected]>
	State:          Draft
	Type:           Project
	Vote:           Pending
	Created:        10-Feb-2018
	Post-History:
	Keywords:       Tcl, object orientation, visibility
	Tcl-Version:    8.7
-----

# Abstract

This TIP proposes a mechanism for private methods and variables in TclOO.
Private methods are methods that can only be called from methods of the same
class. Private variables have names so that they are unlikely to be used
by subclasses by accident (but can still be used from **vwait**, Tk, etc.)

# Rationale

One of the principles of object oriented programming is that classes should be
isolated from each other. This particularly includes the isolation of a
superclass (which might be in one package) from its subclasses (in other
packages) other than for its published API. The TclOO object system in Tcl 8.6