MathGroup Archive 2014

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

Search the Archive

Re: bug in InputForm (Mathematica 9)?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg132503] Re: bug in InputForm (Mathematica 9)?
  • From: Bob Hanlon <hanlonr357 at gmail.com>
  • Date: Thu, 3 Apr 2014 02:16:41 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-outx@smc.vnet.net
  • Delivered-to: mathgroup-newsendx@smc.vnet.net
  • References: <20140327085954.1A3806A26@smc.vnet.net>

Do not include the "Form" when setting the value of the symbol.

MatrixForm[a={{1,2},{3,4}}]

(1 2
3 4

)

(a={{1,2},{3,4}})//MatrixForm

(1 2
3 4

)

To automaticly apply MatrixForm

$Post=If[MatrixQ[#],MatrixForm[#],#]&;

a

(1 2
3 4

)

To clear $Post

$Post=.


Bob Hanlon



On Wed, Apr 2, 2014 at 2:36 AM, Szabolcs Horv=E1t <szhorvat at gmail.com> wrot=
e:

> note: also sent to comp.soft-sys.math.mathematica
>
> On 2014-3-28, 3:30 , Itai Seggev wrote:
> >> Put the following into a notebook cell:
> >>
> >> InputForm[1]
> >> InputForm[2]
> >> "test"
> >>
> >> Evaluate the cell.  Only one of the InputForm commands produces output=
,
> and
> >> that output comes after "test".
> >>
> >> I am guessing these behaviors are not intended ...
> >>
> >> Alan Isaac
> >
> > An old and well known bug, at least to those of us who work on
> Mathematica' s
> > input/output system. :)  Not as trivial to fix as you might think,
> because
> > doing InputForm[foo] in a notebook lives in this strange world which is
> half
> > command-line terminal and half notebook interface, and so wires can get
> > crossed easily.
> >
>
> Marginally related to this, I'm curious how all these *Form functions wor=
k.
>
> MatrixForm has this slightly confusing property:
>
> In[1]:= a=MatrixForm[{{1,2},{3,4}}]
> Out[1]//MatrixForm=
> (1      2
>   3     4)
>
> In[2]:= Head[a]
> Out[2]= MatrixForm
>
> In[3]:= Head[%1]
> Out[3]= List
>
> 'a' cannot be used as a matrix because it is wrapped in MatrixForm.  But
> MarixForm is stripped before the expression is assgined to Out[1].  It
> is also indicated (using Out[1]//MatrixForm) that the output is shown in
> a special form.
>
> How does MatrixForm achieve this, i.e. that it gets stripped from the
> output and that it's shown in the cell label?  Is there a general,
> user-accessible mechanism for this?  Can I create my own "form-function"
> that behaves like this?
>
> Szabolcs
>
>



  • Prev by Date: Re: function is gone
  • Next by Date: Nesting Manipulate to Create a Variable Number of Controls
  • Previous by thread: Re: bug in InputForm (Mathematica 9)?
  • Next by thread: Solve output depends on previous attempt with bad syntax