Hello, I have been trying to write a macro to allow me to omit some parentheses in complicated expressions with many complicated sub-expressions in the tail position.
(I want the dollar sign to work exactly as it does in Haskell) I want to be able to write > (map (lambda (str) (string-append "Hello, " str)) $ string-titlecase $ list > "Alice "Bob" "Eve") and have it expand to > (map (lambda (str) (string-append "Hello, " str)) (string-titlecase (list > "Alice "Bob" "Eve"))) My most recent attempt at this macro is > (define-syntax $ > (lambda (stx) > (syntax-case stx () > [(before ... $ after ...) > #'(before bs ... (after as...))]))) but this does not work, as I cannot have multiple ellipses in the pattern I match against in syntax-case. I assume it is possible to write such a macro in Racket, but I am at a loss as to how. Can anyone point me in the right direction, please? Thanks, -Spencer Gordon
____________________ Racket Users list: http://lists.racket-lang.org/users

