A New Programming Language Every Year
After some abstinence I have started to learn programming languages again. And it's fun! At least one of the languages is even fun-ctional.
I used to learn a programming language a year, approximately, when I was a student. Programming can be a lot of fun, kind of an intellectual puzzle, and also a bit of an art, to find "aesthetically pleasing" ways of expressing information and algorithms.
Then comes the time when you have to do something to earn a living. Even if you have a job in the software industry that will not mean that you can always choose the prettiest programming language. Sometimes you'll get the chance of learning some new language during business hours when there is an urgent need in some project you are assigned to. But languages that are not mainstream are not in this category.
Well, what about learning in your leasure time? Not so easy when you have little children: They have their demands and after a day in the office and after having spent some time with the children you are often simply too tired to toy around with a programming language. That's why I haven't learned too many languages in the last years.
I am going to compensate this now by learning 2-3 languages in parallel... I can't remember when I did this the last time, but I'll give it a try (and hope that I won't confuse too many APIs...)
Here are the candidates
- XSLT (Does this even count as a "programming" language? At least it is a formal language, that'll do for me.)
- Groovy
- Scala
Why are these currently interesting for me?
XSLT just because there are many (too many!) XML documents out there, that have to be mangled in some way. This one is also most probably directly useful for my job. I intend to use it for tree data like I use the Unix stream editor for line oriented files. I do not assume that I become a real friend of XML, though...
Groovy because of the hype around it. I had already started to experiment with it about 2 years ago just before version 1.0 of Groovy. At that time I had the impression that the language is rather fragile, but this might have changed by now.
Last week I read some examples in Scala and I am really impressed by this language. I like the combination of
- integration in the Java Platform
- support for functional programming
- static type system
- concise and regular syntax.
I'll document some of my experiences in this blog, stay tuned.
tags:















