Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Quit versus Clear["Global`*"]

  • To: mathgroup at smc.vnet.net
  • Subject: [mg121280] Re: Quit versus Clear["Global`*"]
  • From: "Oleksandr Rasputinov" <oleksandr_rasputinov at hmamail.com>
  • Date: Wed, 7 Sep 2011 05:40:03 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <201109042206.SAA21533@smc.vnet.net> <j44k53$94d$1@smc.vnet.net>

Quit[Abort[]] doesn't quit; instead it gives $Aborted. (I dare say as  
expected.)

Quit vs. Quit[] performing the same operation isn't a great mystery: one  
can define

f := a

and

f[args___] := a

and get the same result regardless of whether f is called as f or f[...].  
In general DownValues and OwnValues don't work like this, but providing  
for such behaviour in a specific case is easy.

On Tue, 06 Sep 2011 09:03:47 +0100, DrMajorBob <btreat1 at austin.rr.com>  
wrote:

> Quit appears to quit as soon as it is parsed, regardless of arguments...
> yet another poster found that, if it is the first line in a cell with
> other statements, Mathematica doesn't quit until those other statements
> are done, hence wiping out their effect.
>
> Quit[e] the conundrum.
>
> Bobby
>
> On Mon, 05 Sep 2011 13:15:07 -0500, Andrzej Kozlowski <akoz at mimuw.edu.pl>
> wrote:
>
>> Well, I see it differently. All Mathematica functions have the form
>> Head[arguments] where the number of arguments could be 0. Quit is
>> therefore a Mathematica function, like Print[], Return[]. In fact,
>> Quit[n] where n is an integer also works "passing the integer n as an
>> exit code to the operating system" whatever that means. On the other
>> hand, expressions of the form Abracadabra are normally just symbols and
>> normally they do not perform any actions. In fact, do you know of any
>> other example (except Quit) when when evaluating a symbols actually does
>> more than return a value (that usually happens in the case of global
>> constants, whose names begin with $,
>>
>> [1]:= $Version
>>
>> Out[1]= 8.0 for Mac OS X x86 (64-bit) (February 23, 2011)
>>
>> Note, by the way, that Abort[] works but Abort does not:
>>
>> In[3]:= Print[a];Abort[];Print[b]
>> During evaluation of In[3]:= a
>> Out[3]= $Aborted
>>
>> Print[a];Abort;Print[b]
>> a
>> b
>>
>> Andrzej Kozlowski
>>
>> On 5 Sep 2011, at 19:44, DrMajorBob wrote:
>>
>>> I, on the other hand, never saw Quit[] until this thread began.
>>>
>>> I suppose it figures that if Quit kills the kernel, then also Quit[any
>>> arguments or none] might also kill the kernel. (The other way 'round
>>> doesn't necessarily "figure", on the other hand.)
>>>
>>> Bobby
>>>
>>> On Mon, 05 Sep 2011 07:44:17 -0500, Andrzej Kozlowski
>>> <akoz at mimuw.edu.pl> wrote:
>>>
>>>> Actually (as far as I can tell) Quit is undocumented but Quit[] is:
>>>>
>>>> ?Quit
>>>> Quit[] terminates a Mathematica kernel session.
>>>>
>>>> I thought you had made a mistake but I tired just Quit (without the
>>>> brackets) and was surprised (after all these years!) to see it work. I
>>>> am wondering if there are more cases like this?
>>>>
>>>> Andrzej Kozlowski
>>>>
>>>> On 5 Sep 2011, at 13:06, DrMajorBob wrote:
>>>>
>>>>> No. For that, you need:
>>>>>
>>>>> Quit
>>>>>
>>>>> Bobby
>>>>>
>>>>> On Sun, 04 Sep 2011 17:06:32 -0500, Themis Matsoukas
>>>>> <tmatsoukas at me.com>
>>>>> wrote:
>>>>>
>>>>>> So, if I use ClearAll["Global`*"] at the beginning of a notebook and
>>>>>> execute all the cells, is it the same as running on a fresh kernel?
>>>>>>
>>>>>> Themis
>>>>>>
>>>>> --
>>>>> DrMajorBob at yahoo.com
>>>>>
>>>>
>>> --
>>> DrMajorBob at yahoo.com




  • Prev by Date: Re: Quit versus Clear["Global`*"]
  • Next by Date: Re: Quit versus Clear["Global`*"]
  • Previous by thread: Re: Quit versus Clear["Global`*"]
  • Next by thread: Re: Quit versus Clear["Global`*"]