From: Peter Seibel
Subject: What do you call the function part of a restart?
Date: 
Message-ID: <m3k7ay57ms.fsf@javamonkey.com>
My natural inclination is to call it the "restart function" but that
term is already used (per the CLHS glossary entry) to refer to
functions like CONTINUE, and MUFFLE-WARNING that invoke their
eponymous restarts via INVOKE-RESTART. Any terminological suggestions?

-Peter

-- 
Peter Seibel                                      ·····@javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp

From: Kent M Pitman
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <sfwptkmkwgb.fsf@shell01.TheWorld.com>
Peter Seibel <·····@javamonkey.com> writes:

> My natural inclination is to call it the "restart function" but that
> term is already used (per the CLHS glossary entry) to refer to
> functions like CONTINUE, and MUFFLE-WARNING that invoke their
> eponymous restarts via INVOKE-RESTART. Any terminological suggestions?

When do you need to refer to it?
From: Peter Seibel
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <m37k6u3z83.fsf@javamonkey.com>
Kent M Pitman <······@world.std.com> writes:

> Peter Seibel <·····@javamonkey.com> writes:
> 
> > My natural inclination is to call it the "restart function" but that
> > term is already used (per the CLHS glossary entry) to refer to
> > functions like CONTINUE, and MUFFLE-WARNING that invoke their
> > eponymous restarts via INVOKE-RESTART. Any terminological suggestions?
> 
> When do you need to refer to it?

For example, when describing what INVOKE-RESTART does. E.g. "When we
call (invoke-restart 'foo) the main function of the most recently
bound restart named FOO is called." Here I've used "main function" but
I'm not crazy about that either.

-Peter

-- 
Peter Seibel                                      ·····@javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp
From: Kent M Pitman
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <sfw4r1xew2g.fsf@shell01.TheWorld.com>
Peter Seibel <·····@javamonkey.com> writes:

> Kent M Pitman <······@world.std.com> writes:
> 
> > Peter Seibel <·····@javamonkey.com> writes:
> > 
> > > My natural inclination is to call it the "restart function" but that
> > > term is already used (per the CLHS glossary entry) to refer to
> > > functions like CONTINUE, and MUFFLE-WARNING that invoke their
> > > eponymous restarts via INVOKE-RESTART. Any terminological suggestions?
> > 
> > When do you need to refer to it?
> 
> For example, when describing what INVOKE-RESTART does. E.g. "When we
> call (invoke-restart 'foo) the main function of the most recently
> bound restart named FOO is called." Here I've used "main function" but
> I'm not crazy about that either.

Just say the restart is invoked.  I don't understand why you need to mention
a function at all...?
From: Peter Seibel
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <m365md3kzf.fsf@javamonkey.com>
Kent M Pitman <······@world.std.com> writes:

> Peter Seibel <·····@javamonkey.com> writes:
> 
> > Kent M Pitman <······@world.std.com> writes:
> > 
> > > Peter Seibel <·····@javamonkey.com> writes:
> > > 
> > > > My natural inclination is to call it the "restart function"
> > > > but that term is already used (per the CLHS glossary entry) to
> > > > refer to functions like CONTINUE, and MUFFLE-WARNING that
> > > > invoke their eponymous restarts via INVOKE-RESTART. Any
> > > > terminological suggestions?
> > > 
> > > When do you need to refer to it?
> > 
> > For example, when describing what INVOKE-RESTART does. E.g. "When
> > we call (invoke-restart 'foo) the main function of the most
> > recently bound restart named FOO is called." Here I've used "main
> > function" but I'm not crazy about that either.
> 
> Just say the restart is invoked. I don't understand why you need to
> mention a function at all...?

Well, there is a function there right? I'm trying to descibe what
happens when a restart is invoked, and what happens is the appropriate
restart is found and the function associated with it called. Saying
that INVOKE-RESTART causes the restart to be invoked probably doesn't
clear things up much.

If you haven't ever felt the need to ever refer to the "function
associated with the restart" often enough to want a name or phrase
shorter than that, then I guess you wouldn't have a term for it.
That's fine. Maybe I can go through the "function associated with"
business once to define what "invoking the restart" means and be done
with it. I'm sure I'll figure something out. Thanks.

-Peter

-- 
Peter Seibel                                      ·····@javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp
From: Kent M Pitman
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <sfwy8z92nmt.fsf@shell01.TheWorld.com>
Peter Seibel <·····@javamonkey.com> writes:

> > Just say the restart is invoked. I don't understand why you need to
> > mention a function at all...?
> 
> Well, there is a function there right? I'm trying to descibe what
> happens when a restart is invoked, and what happens is the appropriate
> restart is found and the function associated with it called. Saying
> that INVOKE-RESTART causes the restart to be invoked probably doesn't
> clear things up much.

There is no function the user can obtain.

This is the same issue as GO or THROW.  Do you think the system has a
function that does the control transform?  A continuation?  Maybe some
do.  Think of a restart as a catch tag but with more adornment.  Saying
it has a function is like saying THROW has a function...

> If you haven't ever felt the need to ever refer to the "function
> associated with the restart" often enough to want a name or phrase
> shorter than that, then I guess you wouldn't have a term for it.
> That's fine. Maybe I can go through the "function associated with"
> business once to define what "invoking the restart" means and be done
> with it. I'm sure I'll figure something out. Thanks.

Really, I'd like to see the individual sentence(s) where this is a problem.
Just say that the restart "can be invoked" and talk about "when the restart
is invoked, control is transferred" just like "when throw is dont to a tag,
control is transferred".

It could be you need more than this, but my initial assumption is that you
don't.  That's why I asked for the specific situations.
From: Peter Seibel
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <m33chhb0bu.fsf@javamonkey.com>
Kent M Pitman <······@world.std.com> writes:

> Peter Seibel <·····@javamonkey.com> writes:
> 
> > > Just say the restart is invoked. I don't understand why you need to
> > > mention a function at all...?
> > 
> > Well, there is a function there right? I'm trying to descibe what
> > happens when a restart is invoked, and what happens is the appropriate
> > restart is found and the function associated with it called. Saying
> > that INVOKE-RESTART causes the restart to be invoked probably doesn't
> > clear things up much.
> 
> There is no function the user can obtain.
> 
> This is the same issue as GO or THROW.  Do you think the system has a
> function that does the control transform?  A continuation?  Maybe some
> do.  Think of a restart as a catch tag but with more adornment.  Saying
> it has a function is like saying THROW has a function...

Well, RESTART-BIND binds a function, no? I'm not saying there's any
way to get at the function after the restart is bound (other than
implicitly via INVOKE-RESTART) but there was a function on the way in.

> > If you haven't ever felt the need to ever refer to the "function
> > associated with the restart" often enough to want a name or phrase
> > shorter than that, then I guess you wouldn't have a term for it.
> > That's fine. Maybe I can go through the "function associated with"
> > business once to define what "invoking the restart" means and be
> > done with it. I'm sure I'll figure something out. Thanks.
> 
> Really, I'd like to see the individual sentence(s) where this is a
> problem. Just say that the restart "can be invoked" and talk about
> "when the restart is invoked, control is transferred" just like
> "when throw is dont to a tag, control is transferred".
> 
> It could be you need more than this, but my initial assumption is
> that you don't. That's why I asked for the specific situations.

Fair enough. I guess if I really do need it I'll come up with some
(hopefully) reasonable way to refer to it. And if I really don't need
to, well, then I won't. Cheers.

-Peter

-- 
Peter Seibel                                      ·····@javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp
From: Kent M Pitman
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <sfwel11yv76.fsf@shell01.TheWorld.com>
Peter Seibel <·····@javamonkey.com> writes:

> Well, RESTART-BIND binds a function, no? I'm not saying there's any
> way to get at the function after the restart is bound (other than
> implicitly via INVOKE-RESTART) but there was a function on the way in.

Oh, right. Sorry--forgot about that.  I was forgetting these and thinking
they were automatically written only.  (I'll blame it on the fact that I
didn't get much sleep last night...) Does "restart handler function" not 
work for that, or does that make you uncomfortable overloading "handler"?

Note that in Dylan restarts are a kind of conditions, so they would be
handler functions there, too.

> > Really, I'd like to see the individual sentence(s) where this is a
> > problem. Just say that the restart "can be invoked" and talk about
> > "when the restart is invoked, control is transferred" just like
> > "when throw is dont to a tag, control is transferred".
> > 
> > It could be you need more than this, but my initial assumption is
> > that you don't. That's why I asked for the specific situations.
> 
> Fair enough. I guess if I really do need it I'll come up with some
> (hopefully) reasonable way to refer to it. And if I really don't need
> to, well, then I won't. Cheers.

Ok.
From: Peter Seibel
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <m3wuet9k5g.fsf@javamonkey.com>
Kent M Pitman <······@world.std.com> writes:

> Peter Seibel <·····@javamonkey.com> writes:
> 
> > Well, RESTART-BIND binds a function, no? I'm not saying there's any
> > way to get at the function after the restart is bound (other than
> > implicitly via INVOKE-RESTART) but there was a function on the way in.
> 
> Oh, right. Sorry--forgot about that.  I was forgetting these and thinking
> they were automatically written only.  (I'll blame it on the fact that I
> didn't get much sleep last night...) Does "restart handler function" not 
> work for that, or does that make you uncomfortable overloading "handler"?

Hmmm. That might work. Particularly if I feel like emphasizing the
similarities between restarts and condition handlers. Thanks.

-Peter

-- 
Peter Seibel                                      ·····@javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp
From: Kaz Kylheku
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <cf333042.0307080917.593bb964@posting.google.com>
Peter Seibel <·····@javamonkey.com> wrote in message news:<··············@javamonkey.com>...
> My natural inclination is to call it the "restart function" but that
> term is already used (per the CLHS glossary entry) to refer to
> functions like CONTINUE, and MUFFLE-WARNING that invoke their
> eponymous restarts via INVOKE-RESTART. Any terminological suggestions?

``restart handler''
From: Steven M. Haflich
Subject: Re: What do you call the function part of a restart?
Date: 
Message-ID: <3F0F733C.3030104@alum.mit.edu>
Peter Seibel wrote:
> My natural inclination is to call it the "restart function" but that
> term is already used (per the CLHS glossary entry) to refer to
> functions like CONTINUE, and MUFFLE-WARNING that invoke their
> eponymous restarts via INVOKE-RESTART. Any terminological suggestions?

You can call it "dynamic-extent", but just don't call it late for dinner.