Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!caen!uwm.edu!ogicse!milton!hardy!creeds From: creeds@hardy.u.washington.edu (Ron Legere) Newsgroups: comp.theory Subject: Rule Based Language. Message-ID: <19046@milton.u.washington.edu> Date: 26 Mar 91 07:11:50 GMT Sender: news@milton.u.washington.edu Reply-To: creeds@hardy.acs.washington.edu (Ron Legere) Organization: University of Washington, Seattle Lines: 32 I am not sure that this belongs in this group but here goes: I was recently playing around with a product called "Mathamatica". What struck me as interesting was its method of programming by "Transformation rules." My question is are there any languages that are based on this idea. I guess in its most basic form ( not mathamatical like mathamatica) you would be allowed to enter rules: swap $a $b -> b a ( Where the $a for example indicates that any string can fill the pattern, and the thing filling it is temp. called a) Then when you enter an expression like swap x y The system would search the defined rules and return: y x Recursion should also be allowed. The system should also keep evaluating rules until it ran out of rules, and I suppose some precedence would be needed. Are there any languages like this? Are there any languages that can easily be made to emulate this? Please NOTE: I am not a CS student! Also , Is the above, when fleshed out enough to define a full language? ( in the Turing equivalence sense ) Please Respond By Email: creeds@hardy.u.washington.edu Ron Legere