My Introduction into Functional Programming
Before I decided to learn more about Haskell and functional programming, I had almost no interactions with the language other than the occasionally hearing about its difficulty and small viable use cases. Right before starting my journey, I discussed the language with a good friend who said that it is one of the most beautiful languages he’s ever experimented with and to leave behind what I knew programming to be beforehand. That conversation would only further my excitement as I was about to start something new and venture past my previous boundaries.
- A MacBook Air
- Haskell For Mac
- Kindle Fire
- Lots of iced Coffee
Looking back I still cant tell if I was well equipped, or rather well, equipped for the task ahead.
Getting Started: Installing Haskell
I knew from the very beginning that I would want to learn the language on the go and not be anchored to my desktop pc for the learning process, because that would make it so that there would be 2-3 days at a time that I wouldn’t be able to learn/practice. So that left me with my only option which was my MacBook Air, which is great for all-around internet use and on the go computer needs and does fairly well with Visual Studio Code(VS Code) for all of my development needs. VS Code is normally great but with Haskell, the install process and getting VS Code to work was more than challenging. Now I would make the switch to a terminal-based editor but with everything that is currently on my plate, I decided that it is an adventure for another time. This led me to Haskell For Mac, now normally I am totally against buying an editor but I was looking to get up and running quickly. I wanted to start exploring the language and after a few days of constant issues with Haskell and Vs Code not working together, Haskell For Mac was a working option. This isn’t an advert for Haskell for Mac but it is just like any GUI based ide, but expensive and works well with Haskell.
VS Code is normally great but with Haskell, the install process and getting VS Code to work was more than challenging.
Haskell For Mac:
Really when it comes to getting started quickly, it is basically downloading the program and running it. It allows the options for package management but it has a graphics-based user interface which is nice you are new to Haskell and the terminal or command line. While I currently like using Haskell for Mac eventually I know that I will make the switch to the industry standard of using emac or vim for all of my coding needs. Until then I am going to be using Haskell for Mac for maybe the next 3-4 months, depending on how much development time I can get in.
When Do We Get To The Coding???
Well, I already started coding, I am about 2 weeks into learning Haskell. I think I have made decent progress with the language, I am now going back and really trying to make sure I understand many of the core concepts well enough that I can explain them without too many people getting lost. I am in the process of writing what I have learned but I think the difficulty is showing examples, in which I am attempting to make my own examples and not just that them from the material that I am learning from. That way we can really dive into the meat and potatoes of Haskell, which should be really cool. So far Haskell is very different from any language that I have attempted to learn and I can’t wait to share my progress!
My Learning Tools
If you have read my last post I discussed the learning tools for my journey with Haskell. If you haven’t now is the chance to go ahead and check out the link below.