From: Sam S. <sd...@gn...> - 2002-09-03 16:21:20
|
> * In message <m2u...@be...> > * On the subject of "VALUES patch" > * Sent on 02 Sep 2002 00:12:28 +0200 > * Honorable Marco Baringer <em...@be...> writes: > > the patch which addes the VALUES, VALUES1, VALUES2, VALUES3, > VALUES_IF, unboundp boundp, nullpS macros is ready. i'm sure i've > missed something (it's too big to have not missed something) but i'm > considering it readyas far as i can tell right now, it's ready. this > patch does not add or remove functionality, it's just cleaning up the > code. > > get your fresh, sun dired code here: > http://www.bese.it/~segv/clisp/values.patch.gz Thanks. 1. you replaced eq() with eql() in the nullp() and friends. this is a grave mistake since eq() is a simple macro while eql() is a function call. please revert it! 2. VALUES should be called VALUES1 3. unboundp() should be removed! Conditionals like if (!unboundp()) ... are an abomination. 4. VALUES* do not require {} around them - do not put them there! 5. map_hashtable() and map_hashtable_nogc() are in the patch. why? 6. it would be nice if you translated the comments (use babelfish) in the functions you change. 7. if you remove the only action done after the label: @@ -1895,7 +1899,6 @@ ); }); fertig: - mv_count=1; } LISPFUN(find_class,1,2,norest,nokey,0,NIL) you should replace "goto fertig" with "return" 8. #define missingp(x) (unboundp(x) || nullp(x)) appears to be common 9. VALUES(foo); # Wert foo should read just VALUES1(foo); 10. Please do supply a ChangeLog entry listing the macros you introduce and the files you changed. Thanks! You did a lot of work and your patch is very close to being checked in! -- Sam Steingold (http://www.podval.org/~sds) running RedHat7.3 GNU/Linux <http://www.camera.org> <http://www.iris.org.il> <http://www.memri.org/> <http://www.mideasttruth.com/> <http://www.palestine-central.com/links.html> Do not tell me what to do and I will not tell you where to go. |