Friday, January 31, 2014

This week in Haskell


When I was asked to select a language to independently study during this semester I wanted to not only do something that I had never seen or used before but also something that could potentially be useful to me later in my programming career. I have heard a lot about functional programming as well as some topics such as concurrence and parallelism. I started my research as to what language excelled in some of the topics I was interested in. I found Haskell and began reading some documentation and my interest was peaked.

My next step was to see if I would be able to set up a compiler on my computer as to help facilitate my learning of this language. Lucky for me there are numerous compilers available online and I decided that I would use the GHC compiler package that is recommended by Haskell's own website.

Download link:
http://www.haskell.org/ghc/

Once I downloaded the package I found it was extremely easy to set up. I simply ran the .exe provided by the Haskell.org and I had a command line style compiler called GHC as well as a very cool compiler that had a Graphical Interface called WinGHCi. Now that I was all set up it was time to begin writing my first couple of programs. I dove into a really well written (and free!) online book entitled Learn You a Haskell for Great GoodThis resource is aimed at people who have experience in some object-orientated programming but are new to the idea of functional programming, so it was the perfect starting point for me.

Link:
http://learnyouahaskell.com/introduction

After I had read the first couple of chapters in the aforementioned book I was ready to begin programming in Haskell. I whipped out the "Hello, World!" program pretty quick and was so interested in doing more that I continued to write some other simple programs. I wrote a simple Fibonacci number generation using recursion and this helped me to learn a little more about the language. The way I have been writing programs is by simply typing them into notepad (as shown in my previous post) I am curious about exploring the option of finding an IDE that can help me format the syntax.

So far I have been thoroughly enjoying the process of learning something completely new independently from scratch.

Stay tuned for more updates on my progress with Haskell!

-Mike

Wednesday, January 29, 2014

Hello, World!


The Language that I have chosen is Haskell which is a functional language that was first developed in 1990.

Intern level program:

The Hello, World! program is generally the first program that is taught to someone who is learning a new language. In Haskell there is greater flexibility in the creation of this program than in some other languages.

To make my example of the Hello, World! program I opened up notepad and typed main = putStrLn "Hello, World!"


Then I opened up WinGHCi which is a GUI for the Haskell Compiler and I loaded in my helloword.hs (hs is the file extension for a Haskell Program!) and pressed run! Let's take a look at the results:


Success. Simple as that.

Stay tuned for more Haskell Programming.