10

Since we have decided that pasted code is favorable to pasted images of code, I think there's another issue to resolve: How should the code be pasted? A good examle are Greek letters. A code sprinkled with \[CurlyTheta] is very hard to read in "copy as plain text" form.

Now while I think it may be too much to ask people do this themselves every time, my question is of more concern to people with edit rights: are we encouraged to edit those posts, replacing things like \[CurlyTheta] with something like th for easier readability?

| |
9

I'd say the chance of breaking something by accident is too big (it will happen without doubt), and most people will paste the code back to Mathematica anyway. Also, \[Alpha] is not that unreadable (I've been fine with it on SO). It's not the same as these things:

\!\(
\*SubscriptBox[\(\[PartialD]\), \(x\)]\(f[x, y]\)\)

which are truly unreadable.

I vote to leave these alone, and not edit them, unless the code is really terribly unreadable.

| |
  • 1
    Personally, the \[UndirectedEdge]s in mathematica.stackexchange.com/questions/356/… drives me nuts... – Brett Champion Jan 24 '12 at 1:07
  • 1
    @Brett Well, you're right about that. I wonder why <-> isn't produced when converting yo InputForm, after all it's accepted as input! – Szabolcs Jan 24 '12 at 1:14
  • @Szabolcs is that true? Can I edit \[UndirectedEdge] to <-> and preserve code integrity? (Side note: you can apply such a copy rule using ExportAutoReplacements in the Option Inspector -- I mention this for anyone reading.) – Mr.Wizard Jun 18 '12 at 17:13
  • @Mr.Wizard Yes, in v8. – Szabolcs Jun 18 '12 at 17:47
5

Sometimes I find this kind of "coding style" in snippets

  Return[(b - a)/2 \!\(
\*UnderoverscriptBox[\(\[Sum]\), \(i = 1\), \(n\)]\(
\*SubscriptBox[\(weights\), \(i, 2\)]\ f[
\*FractionBox[\(a + b\), \(2\)] + 
\*FractionBox[\(b - a\), \(2\)] 
\*SubscriptBox[\(weights\), \(i, 1\)]]\)\)]];

While the following is roughly the same, and much more readable as a mathematica.stackexchange snippet:

% /. Subscript[a_, b__] :> a[[b]] // InputForm
(* ->
Return[((-a + b)*Sum[f[(a + b)/2 + ((-a + b)*weights[[i,1]])/2]*weights[[i,2]],{i, 1, n}])/2]
*)

Of course there is no problem if you have Mma at hand and copy/paste the code, but when you are reading the Q without access to the front end, decoding the <Esc>...<Esc> notation adds some neural overhead.

I think we should encourage users to use the cleaner possible code in their examples, which must be thought for posting here and not as a lazy pasting of their actual program.

| |
3

I have no qualms at all replacing special characters, as long as it doesn't change the behavior of the code.

| |

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .