[plt-scheme] conditional module inclusion and compilation

From: Lee Spector (lspector at hampshire.edu)
Date: Wed Sep 2 21:25:26 EDT 2009

On Sep 2, 2009, at 8:00 PM, Robby Findler wrote:
> Also, when your program is visible at compile time then various tools
> (check syntax, module browser, compiler, etc) work better.

My first thought in reading this was "then maybe it should make it  
easier to implement arglist-on-space"!

When I brought this up recently several of you pointed to some related  
utilities (helpful but not the same as having arglist-on-space right  
in DrScheme) and Eli pointed out that in PLT the whole concept is  
somewhat problematic because of definitions with case-lambda and  
multiple possible arglists of different arities. Fair enough. But  
after working in DrScheme for about a month this is still the #1 thing  
I miss from my favorite CL environments, and I'd walk a mile even for  
an imperfect version that just punted on the weird cases and said  
something like "see source code." BTW the ideal version of this in the  
DrScheme context would also keep the arglist information from the most  
recent compile (as in MCL for example), so that you can get the  
arglists for functions defined in the same file if you've already  
compiled it once (and if they're wrong because you subsequently edited  
the definitions I could live with that too).

BTW the #2 thing I'm missing is the ability to see local variables  
from the context of an error condition, all the way up the activation  
record stack. And evaluate expressions in that context. As far as I  
can see one can't even do either of these things from the graphical  
debugger, although that seems to run too slowly for me to use it on my  
current application anyway. In every CL I've used one can do both of  
these things in some way, whether graphically (very nice in MCL and on  
some Lisp machines I used long ago) or textually (awkward but you  
could at least explore the context in which the error occurred). Maybe  
this is somehow incompatible with the whole PLT compilation model or  
something... but if not I'd love to be able to do it!



Lee Spector, Professor of Computer Science
School of Cognitive Science, Hampshire College
893 West Street, Amherst, MA 01002-3359
lspector at hampshire.edu, http://hampshire.edu/lspector/
Phone: 413-559-5352, Fax: 413-559-5438

Check out Genetic Programming and Evolvable Machines:
http://www.springer.com/10710 - http://gpemjournal.blogspot.com

Posted on the users mailing list.