On Sun, Feb 12, 2012 at 1:34 PM, Richard Cleis <rcl...@me.com> wrote:
> The DrRacket interactions window replies with 48, not an error, when your > syntax is defined in the definitions window, your function is defined in > the interactions area, and the example is finally run in the interactions > area. > > How are you making it fail? > > Also, have you attempted to use the Macro Stepper? Even if you aren't > actually debugging the macro, it coerces you to organize your thoughts > about how your code is organized (in this case, how the expansion relates > to the word 'mult' and it's actual definition.) > > rac > > Hi Richard, Good questions. The way my code is organized is that the macro is in its own file and installed as a collection in my personal library (i.e. the default location of personal collections). I then create a new file, say "test.rkt", require the macro library file, and then define the function "mult". Within this same file, I then add the code examples contained in my previous email. Finally, I "run" the "test.rkt" file using the "Racket -> Run" menu option. Yes, I have used the macro stepper; I should have mentioned that. It's bizarre. Prior to any expansion, all identifiers named 'mult' have an associated binding. As I step through the expansion in the following code, the last 'mult' eventually loses its binding. I don't know how or why. (==> (mult 12 2) (mult 2 _) (mult _ 1)) Please let me know if any further clarification is needed.
____________________ Racket Users list: http://lists.racket-lang.org/users