chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-users] Re: Keyword Macro Expansion


From: Joshua Griffith
Subject: [Chicken-users] Re: Keyword Macro Expansion
Date: Tue, 27 Nov 2007 00:26:11 -0600

I just found string->keyword.  Sorry!  -Josh

On Nov 27, 2007, at 12:22 AM, Joshua Griffith wrote:

Is there a reason why the macro below results in an error? Is a keyword something other than a symbol? Thanks, -Josh.


CHICKEN
Version 2.731 - macosx-unix-gnu-x86 - [ manyargs dload ptables applyhook ]
(c)2000-2007 Felix L. Winkelmann | compiled [ . . . ] (Darwin)

; loading /Users/josh/.csirc ...
; loading /usr/local/lib/chicken/3/readline.so ...
#;1> (require-extension simplify)
; loading /usr/local/lib/chicken/3/simplify.so ...
; loading /usr/local/lib/chicken/3/codewalk.so ...
#;2> (define (print-keyword #!key keyword) (print keyword))
#;3> (print-keyword keyword: "hello world")
hello world
#;4> (define-macro (print-keyword-macro value) `(print-keyword , (string->symbol "keyword:") ,value))
#;5> ,x (print-keyword-macro "hello world")
(print-keyword keyword: "hello world")
#;5> (print-keyword-macro "hello world")
Error: unbound variable: keyword:

        Call history:

        <syntax>          (print-keyword-macro "hello world")
<eval> (##sys#list (quote print-keyword) (string->symbol "keyword:") value)
        <eval>            (string->symbol "keyword:")
        <syntax>          (print-keyword keyword: "hello world")
        <eval>            (print-keyword keyword: "hello world")        <--
#;5>






reply via email to

[Prev in Thread] Current Thread [Next in Thread]