Difference between revisions of "From a newbie II"

From HaskellWiki
Jump to navigation Jump to search
(Deleting page that hasn't been updated for over 10 years)
Line 1: Line 1:
[[Category:Rants and comments]]
== 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. --[[User:Beroal|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.

Revision as of 14:50, 6 February 2021