On Monday 22 December 2008 07:58, Michael Wood wrote:
> ...
>
> This seems to be a lot simpler if you use keywords instead of
> ?something:

The tradition of using a leading question mark to designate a (logical) 
variable is pretty widespread, and many practitioners from the realms 
of automated reasoning and related ares are inured to it. You'll find 
it in many texts on ATP and related topics. (The Common Logic 
specification abandoned it, and along with that naming convention went 
the possibility of writing formulas with free variables. Many of us 
still use the question marks even though they're not required.) Prolog 
does something similar: An initial capital letter makes a name a 
variable. Prover9 (and its forebear Otter) deems a name to be that of a 
variable when its first letter is 'x' through 'z' (lower-case only). It 
can be switched to the Prolog convention, as well. Cyc names are 
signified by an initial #$ (you can guess why, given its Lisp heritage) 
and its variables by the question mark

In any event, the approach of assigning syntactic categories based on 
the first character is widespread. Furthermore, many of the systems 
that do so are written in (some dialect of) Lisp, and hence already 
support and use keywords designated by initial colons (typically to 
specify various options). I believe the development of such systems was 
a big motivation for programmable readers in Common Lisp and its 
ancestors.


I bring up all this history, which may seem irrelevant to many, because 
I continue to believe that Clojure would benefit from read-table 
control.


> ...


Randall Schulz

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to