Haskell responses for Eric Warmenhoven

Eric Warmenhoven asked a couple of Haskell questions. Here are my answers. BTW, do you want to be added to Planet Haskell? If so, drop me an email. Also, be sure to subscribe to the Haskell mailing lists. Where did all the shared libraries go?…

Agora BASIC

To everybody’s amazement, I’ve today released a BASIC compiler. Agora BASIC is a compiler for Standard Full BASIC. It doesn’t have any aspirations to become a trendy or “modern” BASIC: it’s goal in life is to implement the Full BASIC standard to the best of…

Mitä avoimet ohjelmat ovat?

(Tämä on aiemmin tänään pitämäni luennon käsikirjoitus. Itse luennossa käytin käsikirjoitusta vain tukena, en lukenut sitä ääneen. Valokuva: 40100.) Hei vaan, ja tervetuloa tähän Yläkaupungin yöhön kuuluvaan Linux tutuksi -seminaariin, jonka järjestää Suomen Linux-käyttäjien yhdistyksen paikallisosasto. Minun nimeni on Antti-Juhani Kaijanaho, ja olen ollut avoimien…

Vihdoinkin r.y.!

Puheenjohtamani Taiteellisen ohjelmoinnin ystävien seura Toys on vihdoinkin rekisteröity yhdistys! Ei siinä kestänytkään kuin kolme vuotta, kaksi rekisterin vaatimaa sääntömuutoskierrosta ja kaksi perusilmoitusta… (kun eka vanheni). Katso itse yhdistysrekisterin palvelusta.

You know it’s time to emerge from hack mode when…

… rereading the spec makes you realize you’ve forgotten to deal with an important cross-cutting issue, and trying to figure out what are the undoubtedly numerous changes to the design that are required to handle this issue, makes your head hurt. (Another sign: when your…

Counting lines

Insipired by Daniel Burrows’ tests, I decided to do mine. The object is to come up with a Haskell program that performs the job of wc -l as efficiently as possible. My test material is a randomly generated file with all lines less than 80…

A restrospective on a functional programming course

During the last two months, I taught an elective course on introductory functional programming. The nominal target group was third-year information technology undergrads, but in practice the student body consisted of everything from second-years to almost-done masters students. All had taken at least a year’s…

Unbounded 1.3

Wrote a GDK version of Unbounded‘s drawing. Now it’s compile-time-selectable whether the drawing uses Cairo or GDK (Cairo is used if it is available). The main benefit is that Unbounded compiles on Sarge, though it still requires gtk2hs, which is not in Debian, at build…

Unbounded 1.2

I’ve just released a new version of my game Unbounded Tic-Tac-Toe (yes, I know, there are other names I could have chosen). This version is now able to handle any n-in-a-row on that same unbounded board (although the user interface only allows one to select…

Unbounded Tic-Tac-Toe

Here is the result of a few nights’ worth of hacking. This project was originally my solution to an exercise I had posed to my functional programming students. Since then, I’ve rewritten it once and redesigned the user interface completely. It’s an idealized implementation of…