Re: MakeBoxes vs Format
- To: mathgroup at smc.vnet.net
- Subject: [mg60163] Re: MakeBoxes vs Format
- From: Cca <cca at gregosetroianos.mat.br>
- Date: Mon, 5 Sep 2005 02:27:54 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Ted Ersek asks: >>When and why should we use (Format definitions) vs (MakeBoxes >>definition). >>Are there any other pros and cons between use of MakeBoxes and >>Format? Remember that MakeBoxes appeared in version 3.0, while Format exists since version 1.0. So far, ALL my work with box expressions has been done with MakeBoxes, but as far as I have seen a declaration like Format[expr1]:=expr2 is,for all purposes, equivalent to h/: MakeBoxes[expr1,formattype_] := MakeBoxes[#,formattype]&@@{expr2} where h is the Head of expr1. If you use MakeBoxes[expr1,formattype_] := MakeBoxes[#,formattype]&@@{expr2} the rule will be stored in FormatValues[MakeBoxes] (FormatValues[h] will be empty). Try this with the examples from the manual. For example: Format[xrep[n_]]:=StringJoin[Table["x",{n}]] Attributes[ParsedForm]=HoldAll; Format[ParsedForm[expr_]]:=HoldForm[FullForm[expr]] Format[bin[x_,y_]]:=MatrixForm[{{x},{y}}] Carlos César de Araújo Gregos & Troianos Educacional www.gregosetroianos.mat.br Belo Horizonte, MG, Brasil (31) 3283-1122