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.

Reply via email to