Re: Macro defining Macros issue.

2009-02-15 Thread Chouser
On Thu, Feb 5, 2009 at 2:59 PM, Nathan Cunningham wrote: > > Yup, that solves it. > A while back the blah# didn't support working in nested back ticks. I > hadn't realized they fixed it. Or for that matter added condp :) The auto-gensym behavior hasn't changed. user=> `(foo# ~(vector `foo#)) (f

Re: Macro defining Macros issue.

2009-02-05 Thread Nathan Cunningham
Yup, that solves it. A while back the blah# didn't support working in nested back ticks. I hadn't realized they fixed it. Or for that matter added condp :) Thanks! On Feb 5, 1:42 pm, Meikel Brandmeyer wrote: > Hi, > > first things first: what you want to do is available as condp in > the core l

Re: Macro defining Macros issue.

2009-02-05 Thread Stuart Sierra
On Feb 5, 1:04 pm, Nathanael Cunningham wrote: > I've been working on a def-casemacro macro and I've run into some trouble. > The macro defines smaller macros based on a supplied name and test function. > Each one evaluates the first argument and then uses the test to compare the > result to each

Re: Macro defining Macros issue.

2009-02-05 Thread Meikel Brandmeyer
Hi, first things first: what you want to do is available as condp in the core library of Clojure. That said, here some things I noticed in your macro. You should not capture variables in your macros. That's bad style and might lead to clashes of names. Clojure provides the foo# notation to gener

Macro defining Macros issue.

2009-02-05 Thread Nathanael Cunningham
I've been working on a def-casemacro macro and I've run into some trouble. The macro defines smaller macros based on a supplied name and test function. Each one evaluates the first argument and then uses the test to compare the result to each supplied case, evaluating whatever returns true or raisi

Re: Macro-Defining Macros

2008-11-04 Thread Chanwoo Yoo
Thank you for your explanation! I don't think I fully understand your point. But I'll try. :) On 11월3일, 오후11시24분, Chouser <[EMAIL PROTECTED]> wrote: > On Mon, Nov 3, 2008 at 9:13 AM, Chanwoo Yoo <[EMAIL PROTECTED]> wrote: > > > Below code is copied from 'On Lisp'. I just changed , to ~. But this

Re: Macro-Defining Macros

2008-11-03 Thread Phlex
Chouser wrote: > On Mon, Nov 3, 2008 at 9:13 AM, Chanwoo Yoo <[EMAIL PROTECTED]> wrote: > > Another option is ~'foo which would > explicitly capture "foo" from the context where the macro is expanded. > > --Chouser > > Nice ! I couldn't find this in the documentation. Thanks, Sacha --

Re: Macro-Defining Macros

2008-11-03 Thread Chouser
On Mon, Nov 3, 2008 at 9:13 AM, Chanwoo Yoo <[EMAIL PROTECTED]> wrote: > > Below code is copied from 'On Lisp'. I just changed , to ~. But this > code does not work in Clojure. > > (defmacro abbrev [short long] > `(defmacro ~short [& args] > `(~'~long [EMAIL PROTECTED]))) > > Is there any imp

Macro-Defining Macros

2008-11-03 Thread Chanwoo Yoo
Today, when I was writing some code, which is a macro writing a macro, I felt strange that it never work.. So I decided to examine existing code from 'On Lisp' Below code is copied from 'On Lisp'. I just changed , to ~. But this code does not work in Clojure. (defmacro abbrev [short long] `(def