[Haskell-beginners] Haskell in the Digital Humanities

Niels-Oliver Walkowski walkowski at nowalkowski.de
Tue Jul 22 08:19:46 UTC 2014


Dear Haskell Community,

I am coming to you with a question which I try to solve for 2 month now, but still struggling, so I tried the step to refer to you. The question is simple and was raised by many people before, probably everyone who began with another language and at some point got to know Haskell: Should I learn Haskell?

So I read a lot of things in the www that had the same question or that could support decision making. The reason why I couldn't manage to make a decision rest on – as so often – in the particular case or at least what seems particular for me. I would like to briefly outline why I would love to learn Haskell, what are the reasons why I am hesitating and how all this relates to my background. I would be tremendously grateful for feedback that will make a decision easier for me and hope that it is ok to ask such a question on a beginner's mailinglist.

Background: I am a humanist, working in the so called Digital Humanities realm. I don't have any information technology education though I started coding in PHP at the beginning of University. In DH like in many other areas of 'data driven science' Python is 'Lengua Franca'. That might relate to the fact that coding is means not goal. In fact, often coding is more glueing things together than really code something and the ecosystem of scripts and libraries is as broad as scientific discourse itself. It is easy to reach a goal a goal (which is important when you want to test hypothesis) but things are often dirty of cause.

Interest in Haskell: I got to know ideas of functional programing half a year ago when I digged a little bit into machine theory. Functional Programing expresses exactly how I think about computation and furthermore I enjoy very much to think within a functional logic about things I want to do. Additionally I think that the functional approach has some important advantages for coding in science at least on the publication level because it expresses ideas in a clear defined way that is not the same with an imperative approach. I started to read a little bit about functional programing in Python since Python is multi-paradigm but very quickly my impression was that it is something you do not really want to do, it makes writing code more verbose, you do not really have the benefits of functional programing and often feels like workaround, so I was brought back to Haskell again

Concerns: As mentioned before coding in Digital Humanities is definitely always means for an end. On the other hand I like to to my things straight forward and on a certain abstraction level (maybe because I was trained in Philosophy ;-) ) General concerns rest on the fear that the Haskell ecosystem is not big enough for the area in which I code. I work in the area of text analysis (not identical with computational linguistics), topic modeling, I need sophisticated visualisations, I work with XML (state of the art in DH) and a lot with so called 'dirty data' which relates to the whole NoSQL world – especially Graph and JSON based. Managing Web technologies is important because of the importance of publishing. Approaches like the IPython Notebook are significant (I got to know that there is IHaskell which is IPython with a Haskell kernel but I don't know how valid and stable this project is). I absolutely do not need to have a library for any tiny task and I like to approach things from a higher level of abstraction but of cause there is a point where implementing something on your own is not reasonably time efficient anymore, especially when the goal is something completely different. And being not natively educated in informatics there is also a limit in capacity at a certain point. 

If you could provide me with feedback or with your judgment to help me evaluate the Haskell environment around my area and social field in a more substantial way and to get a more sophisticated feeling for or against the idea that learning Haskell will work out in my case, it would be wonderful. (A blog article about using Haskell in DH that summarizes the discussion and promotes the awareness of Haskell in the DH community would also something I might consider afterwards) If you feel I misused the list, please apologize.

best,
Niels-Oliver Walkowski


More information about the Beginners mailing list