Re: Pattern Matching and Transform Rules



I don't know the full context of Michael Trott's
statement.

Perhaps he was not aware that the mathematica pattern matcher was based on
one written in Lisp? (I think it was first available in Reduce).

Perhaps he was unaware that a fairly complete
duplicate of the exact syntax and semantics of the pattern matcher
is given in open-source lisp code in MockMMA.  Perhaps he was
unaware of the large number of pattern matchers and unification
programs written in Lisp, Prolog, ML, ....  A good example of
one is in Paradigms of AI Programming by Peter Norvig.
Another is Schatchen, used by Moses' symbolic integration
program, which does a number of tricks that Mathematica's
pattern matcher cannot do. Or defmatch in Macsyma.


Some of them are not as elaborate as mathematica's, but to dismiss them ALL, probably sight unseen, is, as Hatto von Aquitanien says, hazardous.

If Mathematica's language is so great, why has so much of
the code been written in C?  Hundreds of thousands of lines of
code. And new code continues to be written, in version after version.






fjolsvit@xxxxxxxxxxxx wrote:

Can you provide an example of how, say, C++ has superior pattern
matching than Mathematica?  We are talking about a recursive
application of the language which is used to examine and transform
expressions written in the language under consideration.

.



Relevant Pages

  • Re: Unlearning Pattern Matching
    ... He is reimplementing half of a modern FPL (the pattern matcher). ... implementation is ad-hoc and if it took a few ... The book "Lisp in small pieces" LISP ... construct an interface for a natural robot language. ...
    (comp.lang.lisp)
  • Re: Parallel Common-Lisp with at least 64 processors?
    ... can be implemented directly over a core lisp. ... would need implementation level support. ... the example of several pattern matcher libraries. ... matching libraries and the ability to Greenspun their own. ...
    (comp.lang.lisp)
  • Re: Does ANSI Common Lisp have pattern matching?
    ... ubiquitous in languages that support it. ... standard pattern matcher in the next version of Lisp. ... A pattern matcher is essentially a glorified if statement. ... Common Lisp Document Repository: http://cdr.eurolisp.org ...
    (comp.lang.lisp)
  • Re: Parallel Common-Lisp with at least 64 processors?
    ... generation Lisp also bundle both? ... CL provides support for pathnames and I/O. ... the example of several pattern matcher libraries. ...
    (comp.lang.lisp)
  • Re: pattern-matching in LISP?
    ... of the language features that they don't use. ... Anyone wanting to learn about ML-style pattern matching would be much better ... pattern matcher and not Lisp, or by ... Lisp, both in terms of clarity and performance. ...
    (comp.lang.lisp)