Re: SchemeUnit redevelopment
"Richard C. Cobbe" <[email protected]> Tue, 17 Aug 2004 11:24:24 -0400
| Newsgroups | gmane.lisp.scheme.plt,gmane.lisp.scheme.plt.schematics.general,gmane.lisp.scheme.plt.schematics |
|---|---|
| Message-ID | <[email protected]> |
For list-related administrative tasks: http://list.cs.brown.edu/mailman/listinfo/plt-scheme Lo, on Tuesday, August 17, Noel Welsh did write: > Add require/expose macro, aka glassbox testing. (I've lost the > source to this, if you have it please send it to me) ;; Requires a module and exposes some of its unprovided (non-syntax!) ;; identifiers. ;; USAGE: (require/expose MODULE-NAME (IDS ...)) ;; where MODULE-NAME is as in the MzScheme manual (i.e., a standard ;; module spec) and IDS are the un-provided identifiers that you wish to ;; expose in the current module. ;; Based on a macro by Raymond Racine (rracine-iVX72re7JJ/[email protected]) posted to ;; plt-scheme in Dec 2003. (define-syntax require/expose (syntax-rules () [(_ mod (ids ...)) (begin (require mod) (define-values (ids ...) (let ([ns (module->namespace 'mod)]) (parameterize ([current-namespace ns]) (values (namespace-variable-value 'ids)...)))))])) There are some other comments I want to make, but I'll take the discussion to schematics-development just as soon as I've subscribed. Richard