diff options
author | N.N. <federico__@users.sourceforge.net> | 2007-09-18 17:19:03 +0000 |
---|---|---|
committer | N.N. <federico__@users.sourceforge.net> | 2007-09-18 17:19:03 +0000 |
commit | f3e255ddca6468b6adea0f10f30540c37cdde9ad (patch) | |
tree | 93e5368ec4db390e7fc1ad456b33c229730a182c /README |
first commit for tclpd externalsvn2git-root
svn path=/trunk/externals/tclpd/; revision=8736
Diffstat (limited to 'README')
-rw-r--r-- | README | 71 |
1 files changed, 71 insertions, 0 deletions
@@ -0,0 +1,71 @@ + + Tcl for Pd + ========== + +this library allows you to to write externals for Pd using the +Tcl language. despite tot/toxy/widget externals, Tcl code ran +with tclpd actually runs in server (rather than gui process). + +this is a PRE-ALPHA release: it means something work, but don't +expect to do serious things right now. also expect changes to +the Tcl API and around. + + + Data conversion between Tcl <=> Pd + ================================== + +In pd exists 'atoms'. An atom is a float, a symbol, a list item, +and such. +Tcl does not have data types. In Tcl everything is a string, +also numbers and lists. Just when something needs to be read as +number, then evaluation comes in. +This leads to loss of information about atom types. Imagine a +symbol '456' comes into tclpd, you won't know anymore if "456" +is a symbol or a float. + +Here a little convention comes in action: in tclpd an atom gets +converted to a two-item list, where first item is atom type, +and second item is its value. + +Some examples of conversion: + + Pd: 456 + Tcl: {float 456} + + Pd: symbol foo + Tcl: {symbol foo} + + Pd: list cat dog 123 456 weee + Tcl: {{symbol cat} {symbol dog} {float 123} {float 456} {symbol wee}} + + + Examples + ======== + +I provided small examples. +after loading pd with option '-lib tcl', just type the filename +(minus the .tcl extension) to load the Tcl externals examples. + +actually there is one simple example: list_change (behaves like +[change] object, but work with lists only) + +examples make use of pdlib.tcl, a little API I wrote to make +things more cute. +you are free to not use it (just look in pdlib.tcl to know what +happens for real) or better: YOU ARE ENCOURAGED to write an OOP +system for writing externals with tclpd. + + + Authors + ======= + + * Federico Ferri <mescalinum@gmail.com> + * Mathieu Bouchard <matju@artengine.ca> + + + License + ======= + +See COPYING file provided with the package. + + |