[Haskell-cafe] Object Oriented programming for Functional Programmers

Jay Sulzberger jays at panix.com
Sun Dec 30 21:11:36 CET 2012



On Sun, 30 Dec 2012, Daniel Díaz Casanueva <dhelta.diaz at gmail.com> wrote:

> Hello, Haskell Cafe folks.
>
> My programming life (which has started about 3-4 years ago) has always been
> in the functional paradigm. Eventually, I had to program in Pascal and
> Prolog for my University (where I learned Haskell). I also did some PHP,
> SQL and HTML while building some web sites, languages that I taught to
> myself. I have never had any contact with JavaScript though.
>
> But all these languages were in my life as secondary languages, being
> Haskell my predominant preference. Haskell was the first programming
> language I learned, and subsequent languages never seemed so natural and
> worthwhile to me. In fact, every time I had to use another language, I
> created a combinator library in Haskell to write it (this was the reason
> that brought me to start with the HaTeX library). Of course, this practice
> wasn't always the best approach.
>
> But, why I am writing this to you, haskellers?
>
> Well, my curiosity is bringing me to learn a new general purpose
> programming language. Haskellers are frequently comparing Object-Oriented
> languages with Haskell itself, but I have never programmed in any
> OO-language! (perhaps this is an uncommon case) I thought it could be good
> to me (as a programmer) to learn C/C++. Many interesting courses (most of
> them) use these languages and I feel like limited for being a Haskell
> programmer. It looks like I have to learn imperative programming (with side
> effects all over around) in some point of my programming life.
>
> So my questions for you all are:
>
> * Is it really worthwhile for me to learn OO-programming?
>
> * If so, where should I start? There are plenty of "functional programming
> for OO programmers" but I have never seen "OO programming for functional
> programmers".

There are several different things called "object oriented
programming".  Here is what Alan Kay once said about C++:

   Actually I made up the term "object-oriented", and I can tell
   you I did not have C++ in mind.

Above quote from

   http://en.wikiquote.org/wiki/Alan_Kay
   [page was last modified on 30 November 2012, at 16:06]

For me the most important things about "objects" are:

1. In the World of the Programming System there is a version of
    Lisp's eq?, ah that word is the Scheme word.

2. Really, objects are what are now called "agents".

The word "inheritance" does not appear in the first 600^W300
pages of my Ideal Textbook on the Theory of Objects in
Programming.

oo--JS.


>
> * Is it true that learning other programming languages leads to a better
> use of your favorite programming language?
>
> * Will I learn new programming strategies that I can use back in the
> Haskell world?
>
> Thanks in advance for your kind responses,
> Daniel Díaz.




More information about the Haskell-Cafe mailing list