| Date: Sun, 23 Oct 2011 15:40:51 -0400 | From: John Cowan <[email protected]> | | Andre van Tonder scripsit: | | > For example, if I deconstruct using C*R and decide to change the | > data structure from pairs to something else (e.g. records that | > have some extra data), I can simply put the code in a module | > parameterized over the C*R deconstructors and the code will | > immediately work with the new data structure. This usually cannot | > be done with an out of the box pattern matcher. | | True. However, you can of course put together your own C*R | functions if you want,
Not if one cares about performance. C*R in SCM are fast because they occupy a special procedure type-code that EVAL and APPLY dispatch directly. LISP is LISt Processing. CONS, C*R, SET-CAR!, SET-CDR!, MAP, etc are a powerful paradigm for list processing, still very much in use. Lets not remove LISP's legacy from Scheme. _______________________________________________ Scheme-reports mailing list [email protected] http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports
