[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Naive T Design Questions



   Date: Tue, 26 Apr 88 16:18:00 EDT
   From: Jonathan A Rees <JAR@AI.AI.MIT.EDU>

       Date: Thu, 14 Apr 88 20:49:54 EDT
       From: James J. Hunt <jjh at ll-vlsi.arpa>

       3. Why was VALUES renamed to RETURN?  RETURN seems to imply change of the
	  control flow which return does not do!

   Invoking a continuation is a return.  RETURN invokes a continuation.

Yeah, but continuations get invoked all the time without RETURNs.  I
think VALUES is a more tasteful name, even independent of any desire I
might have not to wrench unnecessarily the thought habits of Common
Lisp users.

Besides, invoking a continuation isn't exactly a return, in the older
sense in which we're used to using the word, although a return in that
sense is indeed a particular very common form of invoking a
continuation.

       6. Is this really the best way to implement self evaluating keywords in T:
	[...]

   Actually, in T you can use ordinary symbols instead of keywords, since
   you don't have to worry about the vagaries of multiple packages:
      (foo 'bar 3)

Right on.  If we hadn't had multiple packages, we would never have
needed keywords, and "'foo" is the same length as ":foo".

You could always define ":" to be the same as "'", if it's that
important to you to visually distinguish symbols used as keywords from
symbols used in other ways.

-- Scott