Michele La Monaca scripsit: > It would be more correct to say that define-macro has not the feature > set you're interested in, which may or may not be of general interest > depending on the context.
If you know for sure that nobody but you will use your macro, then define-macro is fine, but if you expose it to users, you have created a booby trap that can go off at any time. > What is worse is that define-macro used to be the lingua franca for > macros in Scheme. For a very brief period. Before 1986 (R2RS) there were very few Schemes, and only MIT Scheme survives from that time. After 1991 (R4RS), syntax-rules caught on. So you are talking about five years in the 40-year history of Scheme. > It was 1991 when define-macro was ushered out the standard Define-macro was never part of any Scheme standard. Nonetheless, of the 33 Schemes in my test suite with macros of some kind, all have syntax-rules, 15 have define-macro (MIT is not one of them), 13 have syntax-case, 5 have explicit renaming, 2 have syntactic closures, and 1 have explicit renaming. > form of unity regarding macros. I doubt it never will. The nearest thing to unity is syntax-case, though several important implementations don't have it and probably never will. -- John Cowan http://www.ccil.org/~cowan [email protected] I am he that buries his friends alive and drowns them and draws them alive again from the water. I came from the end of a bag, but no bag went over me. I am the friend of bears and the guest of eagles. I am Ringwinner and Luckwearer; and I am Barrel-rider. --Bilbo to Smaug _______________________________________________ Chicken-users mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/chicken-users
