On Mon, Dec 29, 2008 at 11:54 PM, Jack Trades <[email protected]> wrote: > (define-syntax def > (syntax-rules () > ((def (name arg ... (opt-arg opt-value) ...) body ...) > (define (name arg ... #!optional (opt-arg opt-value) ...) body ...)))) > > Error: during expansion of (syntax-rules ...) - segment matching not > implemented: (arg ... (opt-arg opt-value) ...) > > Will segment matching be coming to Chicken 4 soon?
Sorry, I'm not familiar enough with the syntax-rules compiler, yet, but I'm sure this can be done. But I can try to ask a macrologist. > In the meantime is there > a workaround? A few core parts of my DSL are written with segment matching > macros and like the old saying "You don't know what you've got till it's > gone." Not that I know of. > > Also would this work, even if segment matching was implemented? I think > Chicken 4 wiped out my previous versions so I can't test it. Is there a > proper way to use #!optional, #!rest and the like, or equivalent functions > like opt-lambda? This should work ok. DSSSL extended lambda-list syntax is fully supported. > > All in all, I'm very impressed with the new Chicken. It's very easy to use > even for a beginning Schemer. Keep up the good work. Many thanks for the feedback. It was a major piece of work, so I appreciate your appreciation, deeply. cheers, felix _______________________________________________ Chicken-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/chicken-users
