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

*To*: mathgroup at smc.vnet.net*Subject*: [mg121293] Re: Quit versus Clear["Global`*"]*From*: Andrzej Kozlowski <akoz at mimuw.edu.pl>*Date*: Wed, 7 Sep 2011 08:29:14 -0400 (EDT)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*References*: <201109042206.SAA21533@smc.vnet.net> <j44k53$94d$1@smc.vnet.net> <201109070940.FAA21502@smc.vnet.net>

Of course it is not a great mystery if you define it yourself. After all, you can also define ContextPath := $ContextPath and you will have global variables not beginning with $, etc. The question is why: does WRI appear to violate what seem to be the logical foundations of Mathematica's language. Andrzej Kozlowski On 7 Sep 2011, at 11:40, Oleksandr Rasputinov wrote: > 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 >

**References**:**Re: Quit versus Clear["Global`*"]***From:*Themis Matsoukas <tmatsoukas@me.com>

**Re: Quit versus Clear["Global`*"]***From:*"Oleksandr Rasputinov" <oleksandr_rasputinov@hmamail.com>