That's a great point Robert and Mr. Dijkstra certainly deserves credit. Thanks for reminding me about that.
On Tue, May 9, 2017 at 5:44 PM, Robert Virding <[email protected]> wrote: > Actually this was said by Dijkstra long before Rich: > > “Simplicity is a great virtue but it requires hard work to achieve it and > education to appreciate it. And to make matters worse: complexity sells > better.” > Unfortunately all 3 points are true. He also said: > > “Simplicity is prerequisite for reliability.” > > which is also true. > > On Tuesday, 9 May 2017 14:11:46 UTC+2, Onorio Catenacci wrote: >> >> To paraphrase Rich Hickey--"Simplicity isn't easy". Figuring out those >> simple function signatures is not the first thing that comes to mind for >> most of us. But it's worth the effort. >> >> >> On Saturday, May 6, 2017 at 7:14:45 PM UTC-4, Josh Bourgeois wrote: >>> >>> I thought of practicing, but then I just wound up doing a lot of >>> thinking. Then it clicked 😬 >>> >>> defmodule Words do >>> def count("" <> string), do: parse(string) |> Enum.reduce(%{}, >>> &count/2) >>> >>> defp count("", map), do: map >>> defp count("" <> word, map) do >>> word |> String.replace("_", "-") >>> |> increment(map) >>> end >>> >>> defp increment(word, map), do: put_in(map[word], (map[word] || 0) + 1) >>> defp parse(string), do: string |> String.downcase |> >>> String.replace("-", "&hyph;") |> String.replace("_", "-") |> >>> String.replace("&hyph;", "_") |> String.split(~r/\W/u) >>> end >>> >>> It's just a challenge to think of meaningful names sometimes. Breaking >>> function/method bodies into smaller discrete blocks of work is obviously a >>> fundament to making code more readable, but it takes discipline and, >>> sometimes, a thesaurus >>> >>> Thank you for entertaining this zombie discussion once more 😶 >>>> >>>> -- > You received this message because you are subscribed to a topic in the > Google Groups "elixir-lang-core" group. > To unsubscribe from this topic, visit https://groups.google.com/d/ > topic/elixir-lang-core/dwbNOh_yNd4/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > To view this discussion on the web visit https://groups.google.com/d/ > msgid/elixir-lang-core/59c6d90d-ded2-4794-8a73- > 920ab9350007%40googlegroups.com > <https://groups.google.com/d/msgid/elixir-lang-core/59c6d90d-ded2-4794-8a73-920ab9350007%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > For more options, visit https://groups.google.com/d/optout. > -- Onorio Catenacci http://onor.io http://www.google.com/+OnorioCatenacci -- You received this message because you are subscribed to the Google Groups "elixir-lang-core" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/CAP%3DvNq-iM2cSEtPjRbx%2BU47NDP2ApY4yGJqvoaVfCMAOR9-aKQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
