On Jun 17, 1:28 am, Steven D'Aprano <ste...@remove.this.cybersource.com.au> wrote: > On Tue, 16 Jun 2009 22:46:14 -0700, William Clifford wrote: > > I was staring at a logic table the other day, and I asked myself, "what > > if one wanted to play with exotic logics; how might one do it?" > > First question: what's an exotic logics? > > Do you mean things like three-value logic, fuzzy logic, probabilistic > reasoning, etc? > > Or do you mean logical operators others than and, or, xor, nand, nor, etc? > > Or both? Something else?
The short answer is 'yes'. Obviously, I don't know much about this stuff. I was looking a table of different operators and their truth values and saw that these were just different ways of reading and comparing numbers. I wrote this code to explore this idea in a general sense and see where it leads and learn something about computers. > [...] > > If (nearly) all your methods are static methods, chances are a class is > the wrong solution. Why not just define the static methods as top-level > functions? That is exactly how they started. I wrapped them up in an class because I thought I might want to create a bunch of them for testing and experimentation. I'm curious to see how combinations of functions give the same (or different) results. I've read one can do all of the 16 binary operations with clever uses of NAND or NOR. [SNIP] > You're implementation seems rather confusing. I think that's partly > because you use lots of abbreviated jargon terms that mean little or > nothing to me: rdx, opr (operator?), lsd, pute. Sorry about the confusion. It's because I'm confused. I should check out a book on the subject. Thanks for your help. -- William Clifford -- http://mail.python.org/mailman/listinfo/python-list