Re: signature terminology (editorial BLD issue)

kifer@cs.sunysb.edu (Michael Kifer) writes:
> 
> > 
> > Chris Welty <cawelty@gmail.com> writes:
> > > 
> > > Jeez, I'm sure glad I didn't have Michael for a professor.
> > 
> > I'll avoid making any comments about my time having Chris as a teacher
> > (he was a grad student, not a prof), since I dropped the class after a
> > couple of weeks.  :-)
> > 
> > > The differences are pretty simple, though:
> > > 
> > > A signature has a name and a set of expressions.
> > > A signature name is just a symbol used to reference the set of expressions.
> > > A signature expression is the standard sort of thing you might think of as a 
> > > signature
> > 
> > Right -- that's the part that bugs me.  ("Okay, here we have apples and
> > oranges and bananas.  Let's call apples, "bananas".  Now, hand me a
> > banana.")
> > 
> > Here are names that match my intuition:
> > 
> >      (i) => bool                     a signature 
> >      { (i i) => i, (i) => bool }     a signature set
> >      MySig                           a signature set name
> >      MySig{(i i) => i, (i) => bool}  a signature block ?
> >                                      (a signture set with its name)
> > 
> > A "signature block" assigns the name to the set and has a "return value"
> > of being the set, right? Is it worthwhile combine them?  How about just
> > having assignment, and using the name, later....
> > 
> >     MySig = {(i i) => i, (i) => bool}    a name assignment
> >                                         
> > 
> > My problem with "expression" is that it's usually a general term for any
> > linguistic construct.  Those things above are all linguistic expressions
> > in the signature language, so they all seem like "signature
> > expressions".   Maybe some of you can keep track of when a banana is a
> > banana and when it's an apple, but that's more work than I want to do
> > unless it's really needed.  
> 
> So the problem is with the term "signature expression".
> If we can come up with a better term then fine.
> But your proposal to use "assignment" is not a good one. Traditionally it is
> MySig{(i i) => i, (i) => bool} that would be called a signature, and this is
> what is associated with symbols.

Now that I pretty much understand it, it seems fine to me...

If the whole thing is a signature, then what is a good name for each
"signature expression"?  I keep wanting to call it a type or a
signature.  Hmmm.  A pattern?  a "morph"?  (since it's the thing that
there are many of, to make it polymorphic).

Anyway, this isn't worth the time any more.  I'll drop it.

     - s

Received on Tuesday, 25 September 2007 21:56:51 UTC