Page 1 of 1

Question on OOPCL

Posted: Tue Jun 03, 2014 1:19 pm
by macrolyte
I'm reading OOPCL, and could use some help with a term.
OOPCL wrote:
The name of the writer generic function is the list (setf lock-owner). This list is not a form to be evaluated; it is the name of the function—in
other words, it is the "function specifier."
I've never seen the term "function specifier" before, could someone please explain what this means in context with the text. Also, I've been searching the Hyperspec, and I haven't found any reference to "This list is not a form to be evaluated" in regards to the writer generic function which is generated by the :accessor slot option. Could someone assist on where I might find more information? Thanks.

Re: Question on OOPCL

Posted: Tue Jun 03, 2014 2:55 pm
by macrolyte
I think I've found the answer to my first question here:
CLTL wrote: [X3J13 voted in March 1989 (FUNCTION-NAME) to use fdefinition in the previous paragraph, as shown, rather than symbol-function, as it appeared in the original report on CLOS [5,7]. The vote also changed all occurrences of function-specifier in the original report to function-name; this change is reflected here.-GLS]
So "function specifier" is probably an archaic for "function name" since
CLTL wrote: The function-name argument is a non-nil symbol or a list of the form (setf symbol).
which is as it should be. I still need help with the second question though. Thanks

Re: Question on OOPCL

Posted: Tue Jun 03, 2014 2:58 pm
by Goheeca

Code: Select all

(setf foo)
Look at that this way: the list doesn't make sense for evaluation. It's only notation which roughly means that the foo is defsetfed. By the way, I like the setf (an abbreviation of set function) facility -- the declarative attitude very much.

The similar thing works in scheme:

Code: Select all

(define (pow2 x) (* x x))
really means:

Code: Select all

(define pow2 (lambda (x) (* x x)))
Although the setf in a definition and in an application looks differently against in scheme's example. The declarative attitude is the same.

Re: Question on OOPCL

Posted: Tue Jun 03, 2014 3:33 pm
by macrolyte
Goheeca wrote: Look at that this way: the list doesn't make sense for evaluation. It's only notation which roughly means that the foo is defsetfed. By the way, I like the setf (an abbreviation of set function) facility -- the declarative attitude very much.
So that's it! That was bugging the hell out of me. I just want to be sure of the concepts involved. BTW setf was my first "aha" moment in Lisp when I realized what all a place could be! Thanks so much. I plan on finishing the book in about a few weeks, so I'll probably have more questions. Pax.

Re: Question on OOPCL

Posted: Tue Jun 03, 2014 3:49 pm
by Goheeca
Yeah, a great example is here on this forum.

Re: Question on OOPCL

Posted: Tue Jun 03, 2014 8:04 pm
by macrolyte
One other question, does anyone know the status of Sonya Keene? She doesn't have a Wikipedia page, although she apparently worked for Symbolics, which is just plain awesome in itself. Just my morbid curiosity kicking in... thanks.