[racket] Variable naming conventions

From: Neil Van Dyke (neil at neilvandyke.org)
Date: Wed Sep 14 17:34:31 EDT 2011

Pronounce the "/" as "with", and it usually makes sense.  Sometimes it's 
for a variation of a behavior, or composition of behaviors, sometimes 
it's just as shorthand for the word "with", and sometimes it's something 
else.  You might use "/" a little less often, now that you have keyword 
arguments -- both for the names, and for optionality.

I think that asterisks often mean simply "variation on a theme", not 
necessarily "recursive".

You've identified most of the most popular conventions.

I am trying to introduce one new convention, but I might still be the 
only person doing it: pattern variables in syntax transformers are in 
all uppercase.  Every time I see someone using all-uppercase for 
``constants'' in Racket[*], I vow to become rich and powerful, so that I 
can quietly destroy those people from a distance.

[*] All-uppercase-and-underscores is something kinda dumb Java did to 
make it look like K&R C, even though that convention came from when 
``constants'' were uppercase in C because they were problematic 
preprocessor symbols.


Posted on the users mailing list.