tcl::chan::random(3tcl)Reflected/virtual channel supportcl::chan::random(3tcl)
______________________________________________________________________________
NAME
tcl::chan::random - Random channel
SYNOPSIS
package require Tcl 8.5
package require TclOO
package require tcl::chan::events ?1?
package require tcl::chan::random ?1?
::tcl::chan::random seed
______________________________________________________________________________
DESCRIPTION
The tcl::chan::random package provides a command creating random chan-
nels, i.e. read-only channels which return an infinite stream of
pseudo-random characters upon reading. This is similar to the random
channels provided by the package Memchan, except that this is written
in pure Tcl, not C, and uses a much simpler generator as well. On the
other hand, Memchan is usable with Tcl 8.4 and before, whereas this
package requires Tcl 8.5 or higher, and TclOO.
The internal TclOO class implementing the channel handler is a sub-
class of the tcl::chan::events framework.
API
::tcl::chan::random seed
This command creates a new random channel and returns its han-
dle. The seed is a list of integer numbers used to initialize
the internal feedback shift register of the generator.
BUGS, IDEAS, FEEDBACK
This document, and the package it describes, will undoubtedly contain
bugs and other problems. Please report such in the category virtchan-
nel of the Tcllib Trackers [http://core.tcl.tk/tcllib/reportlist].
Please also report any ideas for enhancements you may have for either
package and/or documentation.
When proposing code changes, please provide unified diffs, i.e the out-
put of diff -u.
Note further that attachments are strongly preferred over inlined
patches. Attachments can be made by going to the Edit form of the
ticket immediately after its creation, and then using the left-most
button in the secondary navigation bar.
KEYWORDS
/dev/random, random, reflected channel, tip 219, virtual channel
CATEGORY
Channels
COPYRIGHT
Copyright (c) 2009 Andreas Kupries <andreas_kupries@users.sourceforge.net>
tcllib 1 tcl::chan::random(3tcl)