<p dir="ltr">Yes Haskell is practical except for finding Haskell replacement programmers.</p>
<p dir="ltr">--<br>
--</p>
<p dir="ltr">Sent from an expensive device which will be obsolete in a few months! :D</p>
<p dir="ltr">Casey<br>
    </p>
<div class="gmail_quote">On Nov 25, 2015 9:50 AM, "Martin Vlk" <<a href="mailto:martin@vlkk.cz">martin@vlkk.cz</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
Dennis Raddle:<br>
> On Wed, Nov 25, 2015 at 4:56 AM, Alexander Berntsen <<a href="mailto:alexander@plaimi.net">alexander@plaimi.net</a>><br>
> wrote:<br>
<br>
<snip><br>
<br>
> I don't agree. Having worked for 16 years in a government aerospace<br>
> contractor doing C++ and Python programming, what I saw is that maybe half<br>
> the programmers struggled with precise thinking and abstraction. They<br>
> thought of programs as step-by-step recipes and implemented those recipes<br>
> in exactly the same way they themselves had always thought about a problem.<br>
><br>
> Also having worked as a math tutor, I see many people who struggle with<br>
> abstract thinking.<br>
<br>
<snip><br>
<br>
> Can an "okay" imperative programmer become an "okay" Haskell programmer?<br>
> Does the necessary skill, work, motivation, and talent to program at an<br>
> "ordinary" imperative level serve as a sufficient prerequisite for<br>
> functional programming? I really don't think so, but I could be wrong.<br>
<br>
What'd be the definition of an okay programmer? If we agree that's the<br>
one that "learns how to solve a few standard problems and then applies<br>
the same thing over and over without much creativity", then I'll argue<br>
this will work with Haskell just like with any imperative language. If<br>
you train them on Haskell that is. :-)<br>
<br>
<snip><br>
<br>
> But I wonder if the same mechanisms that make Haskell concise (which are<br>
> some of the things that make it hard) also are bound up with its practical<br>
> advantages so that they can't be separated.<br>
<br>
What you mean by practical? Does it mean that you can find enough people<br>
able to use it in your real-world project, without putting too high<br>
requirements on training them?<br>
<br>
If so, then we could say that given the current state of affairs, where<br>
the mass of okay programmers are trained on a different paradigm,<br>
Haskell is not all that practical.<br>
<br>
But if practical means that the language is well suited for solving<br>
real-world problems, in beautiful ways, once you get it, then it is<br>
uberpractical! :-)<br>
<br>
M.<br>
_______________________________________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org">Beginners@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners</a><br>
</blockquote></div>