unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* Need help with macro
@ 2018-12-13  0:30 Mike Gran
  2018-12-13  1:34 ` Mark H Weaver
  2018-12-13  1:38 ` Alex Vong
  0 siblings, 2 replies; 5+ messages in thread
From: Mike Gran @ 2018-12-13  0:30 UTC (permalink / raw)
  To: guile-user

Hey all,

I need help making a macro.

I have an existing procedure of the form

(call-method self method (...))

Note that SELF is a struct, METHOD is a string, and the ellipses can
be anything.

I would like to make a macro that transforms into the above, but, is
of the form

(send self (method ...))

where SELF is the same struct, METHOD is a literal symbol, and the
ellipses are unchanged.

For example, I would like to call

(send date (get-year))
(send date (set-year 2018))
(send date (set-dmy 1 1 2018))

and have it be

(call-method date "get-year" '())
(call-method date "set-year" (list 2018))
(call-method date "set-dmy" (list 1 1 2018))

I get hung up on figuring out how to handle the literal symbol and the
ellipses.

If you need context, see
https://wiki.gnome.org/Projects/GObjectIntrospection/HowToWriteALanguageBinding

Thanks in advance,

Mike Gran





^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-12-13 18:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-13  0:30 Need help with macro Mike Gran
2018-12-13  1:34 ` Mark H Weaver
2018-12-13 18:14   ` Mike Gran
2018-12-13  1:38 ` Alex Vong
2018-12-13 18:15   ` Mike Gran

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).