[Haskell-cafe] A Thought: Backus, FP, and Brute Force Learning

Clark Gaebel cgaebel at uwaterloo.ca
Thu Mar 21 01:15:58 CET 2013


Reading papers might not be the best way to get started with Haskell. It'll
be a great way to expand your knowledge later, but they're generally not
written to give the reader an introduction to functional programming.

I highly recommend Learn You A Haskell [1]. It is extremely well written.

Regards,
  - Clark

[1] http://learnyouahaskell.com


On Wed, Mar 20, 2013 at 6:59 PM, OWP <owpmailact at gmail.com> wrote:

> I made an error.  I meant FP to stand for Functional Programming, the
> concept not the language.
>
> On Wed, Mar 20, 2013 at 6:54 PM, OWP <owpmailact at gmail.com> wrote:
>
>> This thought isn't really related to Haskell specifically but it's more
>> towards FP ideal in general.
>>
>> I'm new to the FP world and to get me started, I began reading a few
>> papers.  One paper is by John Backus called "Can Programming Be Liberated
>> from the von Neumann Style? A Functional Style and It's Algebra of
>> Programs".
>>
>> While I like the premise which notes the limitation of the von Neumann
>> Architecture, his solution to this problem makes me feel queasy when I read
>> it.
>>
>> For me personally, one thing I enjoy about a typical procedural program
>> is that it allows me to "Brute Force Learn".  This means I stare at a
>> particular section of the code for a while until I figure out what it
>> does.  I may not know the reasoning behind it but I can have a pretty
>> decent idea of what it does.  If I'm lucky, later on someone may tell me
>> "oh, that just did a gradient of such and such matrix".  In a way, I feel
>> happy I learned something highly complex without knowing I learned
>> something highly complex.
>>
>> Backus seems to throw that out the window.  He introduces major new terms
>> which require me to break out the math book which then requires me to break
>> out a few other books to figure out which bases things using archaic
>> symbols which then requires me to break out the pen and paper to mentally
>> expand what in the world that does.  It makes me feel CISCish except
>> without a definition book nearby.  It's nice if I already knew what a
>> "gradient of such and such matrix" is but what happens if I don't?
>>
>> For the most part, I like the idea that I have the option of Brute Force
>> Learning my way towards something.  I also like the declarative aspect of
>> languages such as SQL which let's me asks the computer of things once I
>> know the meaning of what I'm asking.  I like the ability to play and learn
>> but I also like the ability to declare this or that once I do learn.  From
>> Backus paper, if his world comes to a reality, it seems like I should know
>> what I'm doing before I even start.  The ability to learn while coding
>> seems to have disappeared.  In a way, if the von Neumann bottleneck wasn't
>> there, I'm not sure programming would be as popular as it is today.
>>
>> Unfortunately, I'm still very new and quite ignorant about Haskell so I
>> do not know how much of Backus is incorporated in Haskell but so far, in
>> the start of my FP learning adventure, this is how things seem to be seen.
>>
>> If I may generously ask, where am I wrong and where am I right with this
>> thought?
>>
>> Thank you for any explanation
>>
>> P.S.  If anyone knows of a better place I can ask this question, please
>> feel free to show me the way.
>>
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130320/cd05de25/attachment.htm>


More information about the Haskell-Cafe mailing list