[Haskell-cafe] Readable Haskell

David Feuer david.feuer at gmail.com
Sun Sep 20 23:13:59 UTC 2020


One important, sometimes difficult, part is to work out how to break up a
big function into multiple documentable small ones. Finding good natural
boundaries can be tough, and may require multiple attempts, but it's really
great when it works out. Ideally, each piece represents a single idea,
which makes independent sense without needing to know how it will be used.
Each piece should ideally have a small enough implementation to be able to
understand it easily, and should have a reasonably descriptive name.

On Sat, Sep 19, 2020, 11:03 AM Misja Alma <misja.alma at gmail.com> wrote:

> Hi,
>
> I have been writing Haskell in my spare time for a couple of years now,
> but when I showed some code lately to a friend he remarked that he didn't
> find it very readable. Actually I agree, when I look at my own code of a
> couple of months old I have trouble figuring out too what exactly it is
> doing.
>
> I'm coming from a Java and Scala background and there, especially for
> Java, are some generally accepted best practices that make sure that your
> teammates don't have too much trouble reading your code. E.g. write short
> functions with a single responsibility, use variable, class and function
> names that explain what they are meant for, etc.
>
> I think some of those best practices, like short functions with single
> responsibility, are useful for Haskell as well. But Haskell is a different
> language than Java and has its own strong points and pitfalls regarding
> readability, so it probably needs different coding standards as well.
>
> I have been looking on the Internet if I could find some tips about
> improving readability but all I could find was
> http://www.haskellforall.com/. Although there are some useful tips in
> there, this site seems to be aimed at making Haskell easier to read for
> newcomers from other languages. What I am interested in are tips from real
> projects that are built by real teams.
> Does anybody have any tips, or are there some sites or books that I could
> read about this topic?
>
> Thanks,
> Misja
>
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> Only members subscribed via the mailman list are allowed to post.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20200920/532a9c80/attachment.html>


More information about the Haskell-Cafe mailing list