[Haskell-cafe] Readable Haskell
migmit at gmail.com
Sun Sep 20 12:18:27 UTC 2020
True, but it might have something to do with the fact that mathematics was invented long before monospaced fonts. And hand-writing integrals, or quantifiers, or the empty-set symbol, is just as easy as writing digits.
I would rather agree with Ben: there are lots of places where long identifiers are distracting. Sometimes they make sense, but a lot of times they just don't.
> On 20 Sep 2020, at 14:02, Ignat Insarov <kindaro at gmail.com> wrote:
> Ben, I think your proposition is righteous and uncontestable in
> theory, and I stand by you. Unfortunately the practice hardly aligns
> with the sermon.
> No one writes Mathematics in monospace ASCII left to right. They go to
> great lengths to actually type set things, generously use large and
> small font, bold and cursive, write above and below the line, use
> Greek and Hebrew and a myriad infix symbols. And for a reason —
> compare a latex source of a _«notation heavy»_ paper with it rendered.
> One may approach mathematical style in program source with generous
> use of Unicode, but few dare. Even type setting code in proportional
> font is considered heresy by many — just so that they may banish
> proper tabulation and _indent with spaces_. So, even the proponents of
> the mathematical style do not care to follow it as soon as it requires
> a little effort. _(Hoω h∀rd may it be to g∃t some ∪nic⊕de on one's
> kεyb∅arδ? See also the packages `base-unicode-symbols` and
> `containers-unicode-symbols`.)_ Therefore I think for many it is
> merely an excuse for writing ugly code.
> The Darcs code you show illustrates the point Chris Done speaks for as
> well. Observe top level names: `displayPatch`, `commuteConflicting`,
> `cleanMerge` — quite German! Then there is `ctxAddInvFL` and
> `mapFL_FL`, but that from other modules. Finally, I tried to find out
> what `Prim` stands for — I went as far as to the index of `darcs` on
> Hackage but no luck. And `prim` is the most frequent in the list of
> words of the module, with 125 occurrences in normalized case.
> Primitive? Primary? Prime? Primavera?
> : https://hackage.haskell.org/package/base-unicode-symbols
> : https://hackage.haskell.org/package/containers-unicode-symbols
> : https://hackage.haskell.org/package/darcs-2.16.2/docs/doc-index-P.html
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> Only members subscribed via the mailman list are allowed to post.
More information about the Haskell-Cafe