Subject: Keyword arguments... From: Alexander Taranov <tay@xxxxxxxxxx> Date: Thu, 6 Aug 1998 18:59:11 +0400 (MSD) |
Norman Walsh writes: > Is it the case, as it appears to be, that in user-defined > functions with keyword arguments, the keyword arguments must > always appear last? > > I'd like to define a function, "make-element", so that it could > be used just like the sgml backend's "make element" function. > > (make-element gi: "foo" attributes: '() some-sosofo) > > But it seems I'm stuck with either > > (make-element some-sosofo gi: "foo" attributes: '()) > > or > > (make-element gi: "foo" attributes: '() sosofo: some-sosofo) > > Is that the case, or am I overlooking something? To my knowlege that's the case. to begin with keyword args MUST appear in pairs -- key - value Once i wrote such fucnction and here it is: ;;; (html-markup 'tag' [attrs: 'list of attr/val lists'] sosofo ...) ;;; results in tagging (with opt attributes) of sosofos (define (html-markup tag #!rest args) (let* ( (tag (force-string tag)) (atrs? (member attrs: args)) (atrs (if atrs? (car (cdr atrs?)) #f)) (sfs (if atrs? (cdr (cdr atrs?)) args))) (sosofo-append (make formatting-instruction data: (string-append "<" tag (html-attrlist atrs) ">")) (if (null? sfs) (current-node) (apply sosofo-append sfs)) (make formatting-instruction data: (string-append "</" tag ">")) *newline*))) -tay > > Cheers, > norm > -- > Norman Walsh <ndw@xxxxxxxxxx> | Whatever you do may seem > http://nwalsh.com/ | insignificant, but it is most > | important that you do it.--Ghandi > > > DSSSList info and archive: http://www.mulberrytech.com/dsssl/dssslist DSSSList info and archive: http://www.mulberrytech.com/dsssl/dssslist
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Keyword arguments..., Norman Walsh | Thread | Re: Keyword arguments..., Paul Prescod |
Keyword arguments..., Norman Walsh | Date | jade (unofficial) and jadetex updat, Sebastian Rahtz |
Month |