From 655b1a186f2ccf76ba995b59d4ca4b7d08ef5bcf Mon Sep 17 00:00:00 2001 From: "N.N." Date: Fri, 6 Jan 2006 20:19:28 +0000 Subject: . svn path=/trunk/abstractions/pureunity/; revision=4365 --- README | 28 ++++++++++++++++++++++++++-- pureunity.c | 22 ++++++++++++++++++++++ 2 files changed, 48 insertions(+), 2 deletions(-) diff --git a/README b/README index 074c401..37c7639 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -$Id: README,v 1.7 2006-01-04 02:59:22 matju Exp $ +$Id: README,v 1.8 2006-01-06 20:19:28 matju Exp $ PureUnity @@ -225,7 +225,7 @@ those other operators are faithful to an algebraic property. [commutator $type $class] (2 inlets) ab-ba [associator $type $class] (2 inlets) (ab)c-a(bc) -[distributor $type $class1 $class2] (3 inlets) a(b+c)-(ab+ac) +[distributor $type $class1 $class2] (3 inlets) a&(b^c)-(a&b^a&c) [invertor $type $class1 $class2] (2 inlets) ab/b-a +-+-+--+---+-----+--------+-------------+---------------------+ @@ -235,6 +235,30 @@ For each class, a test file's name is the class name followed by "-test.pd", and a rule file's name is the class name followed by "-rule.pd", in the same way as it is for help files. +for a class called $foo, the protocol (aka interface aka rule) $foo is the +set of behaviours expected from the $foo class; the class called $foo-rule +must repect the $foo protocol as well, plus it should test that the inputs +are valid, and if they are, it should test for one or several results and +report any errors. + +(((To report errors and inaccuracies, output them through the properties outlet at the right. If there is no +properties outlet in $foo (curently almost nothing in Pd has one), +then $foo-rule must have one more outlet than $foo.))) + +(((Float messages coming out of the properties outlet of $foo-rule report +accuracy. Named error messages come out with selector "error" followed by +an error-symbol and then its arguments.))) + +(((In the case of true/false logic, a value of 0 means that a test has passed +and a 1 means that a test has failed. Those values represent failure and not +success. The reason is so that it matches with accuracy levels, where 0 is +perfectly accurate, but any inaccuracy shows up as a relative error fraction. +Any finite nonnegative value is allowed for accuracy, because it is expected +to be the result of a norm))). + +(((In standard math, "Discrete Metric" is when there are only two possible +distances between objects: together=0 and apart=1))) + +-+-+--+---+-----+--------+-------------+---------------------+ ETC diff --git a/pureunity.c b/pureunity.c index 4db49bd..f98a6b9 100644 --- a/pureunity.c +++ b/pureunity.c @@ -1,3 +1,25 @@ +/* + $Id: pureunity.c,v 1.4 2006-01-06 20:19:28 matju Exp $ + PureUnity + Copyright 2006 by Mathieu Bouchard + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License + as published by the Free Software Foundation; either version 2 + of the License, or (at your option) any later version. + + See file ./COPYING for further informations on licensing terms. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ + #include /*#include */ #include "../../pd/src/m_pd.h" -- cgit v1.2.1