From a newbie II

From HaskellWiki
Revision as of 05:13, 20 January 2010 by Beroal (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Introduction

Hello there. I am another Haskell beginner. I am writting this page to tell my experience with Haskell so far, inspired by the article From a newbie.

First impressions of Haskell

My first language was PHP, then C, then C++ and some ruby/python scattered sparsely. Then someone in the #c++ channel in Quakenet said something about Haskell and functional programming. He said there were 'no variables' or something of the sort, and how it had influenced and improved his C++ style. Since he was a pretty good programmer I decided to take a look. Ugh, what the f*ck is this? So it never went past taking a glance from the examples in wikipedia or haskell.org, learning by guessing and then giving up.

Only 6 months after, out of sheer boredom I decided to resume my Haskell lessons. Naturally, I am enjoying it more than ever, since this 'feeling' that learning something \this\ new gives I had only found when learning C, or learning about OOP in ruby or C++.

Learning Haskell takes lots of time and practice

Just like it took... what, 2 years? to learn C++ (and I still don't consider myself good at it), I think Haskell has a loooong learning curve. Specially if you come from an imperative background.

That is the problem. Imperative or OOP entrenches in your brain and repels other paradigms. Just learn Haskell earlier. --Beroal 05:13, 20 January 2010 (UTC)

Learning Haskell made easy (easier)

Short and sweet:

  • Print the haskell98 report - read.
  • #haskell on freenode - ask.

Haskell can be interpreted AND compiled?

I have to admit this was one of the features about it that attracted me the most. So far I had dealt with either compiled languages (C, C++) or interpreted (Ruby, Python, PHP). This just looked awesome. And it is.

Haskell can be used to write real-world stuff

Amazing, so it's not educational oriented only, but rather has a rather large standard library for interfacing with the real-world (WIN32 Api, OpenGl, Networking, etc). Sweet.

Elegant solutions here I come

I'm not even sure if I like the code more than the resulting binaries sometimes. :)

Wtfux is a monad

I think I'm getting it...amazing. Start by understanding IO. Then realize what a monad IS. Then make your own monads. Oh my gosh.