-
Harmony - Confession 77
2017.11.15 15:56:28
This is a blog entry about Shirakumo's sound system Harmony. While Harmony was released some months back, I spent the last few weeks rewriting large parts of it from the ground up, and I think it's worth it to write a short article describing how it's built and what you can do with it. So, if you're interested in doing sound processing and playback in Lisp, this is for you.
-
Project Listing - Confession 76
2017.10.07 14:57:27
This is a listing of projects that I've started, some of which I've completed. The intent is to spread awareness about the work I've done, as I speculate that a lot of people don't know about most of it, even though it might prove useful to their own projects. So, hopefully this article will help a bit in that regard.
-
Portacle Release - Confession 75
2017.09.07 16:06:56
I've written about Portacle on a previous occasion, where I talked mostly about the issues I've faced. This time, however, I'm excited to announce that Portacle has finally reached version 1.0. This means that there are no obvious remaining issues that I am aware of. Everything should Just Work™.
-
Trial “Study Session” Next Saturday, 17th of June
2017.06.10 08:10:31
Next Saturday, the 17th of June, there is going to be a live “study session” about Shirakumo's game engine Trial. The intention of this event is to get people acquainted with the internal structure and features of Trial, so that they may work on it by themselves, and thus help improve it in the future.
-
Radiance Release - Confession 73
2017.04.07 09:11:04
Right now I'm at Brussels Airport, waiting for my departing flight back to Zürich. The 10th European Lisp Symposium is over, and I got to have my first “real” talk at it. It was, as you might guess, about Radiance and some of the core concepts behind the project. With that, I think it is finally time to announce Radiance's proper release into the wild!
-
Portacle - Adventures in Cross-Platform Deployment - Confession 72
2017.02.22 18:58:29
As announced in my previous post, I've decided to do a write-up that illustrates my adventures in developing Portacle, a cross-platform, portable, installer-less, self-contained Common Lisp development environment.
-
It's Been So Long - Confession 71
2017.02.09 23:56:12
It's been a good while since I last wrote an entry. I didn't write anything all January for a multitude of reasons, at the forefront being that it was exam season again. That's over with now, fortunately, so I do have some more time on my hands to goof off. Unfortunately though, I only have one more week left of this precious “free” time before university strikes me in the back again. I best use it wisely.
-
Radiance - An Overview - Confession 70
2016.10.30 15:11:09
It's been a good while since I last worked on Radiance. Unfortunately I can't claim that this was because Radiance was completely finished, quite far from it to be truthful. However, it has been stable and running well enough that I didn't have to tend to it either. In fact, you're reading this entry on a site served by Radiance right now. Either way, thanks to some nudging by my good friend Janne, I've now returned to it.
-
Ludum Dare 36 & Lisp Application Programming - Confession 68
2016.08.30 21:53:45
With just about one hour and a half to spare we managed to submit our entry for Ludum Dare 36. Ludum Dare is a regularly occurring, fairly well-known game jam the idea of which is to create a game from scratch in 48 hours by yourself or 72 hours in a team. Given that, unlike last time we tried to participate we actually managed to finish making something that resembles a game, I think it's worth noting what my experience was as well as my general thoughts on game programming in Lisp.
-
Go FORth - Confession 66
2016.07.12 15:18:03
As part of yet another yak-shaving quest I've come to write a library that I only now realise I've been missing for a while: an extensible and generic iteration macro.
-
9th European Lisp Symposium - Confession 62
2016.05.11 13:58:40
As I'm writing this I'm still in Krakow. Sitting next to me is Till, who joined me for ELS this year. It was a blast, but I'm also really exhausted and my throat is still hurting a bit from talking all the time the past three days. Our flight back to Zürich is in about an hour from now and I have a test to study for on the coming Thursday; I actually would've really liked to stay a bit longer, especially considering there were a few people I would've loved to talk to a bit more. Alas, you can't always get what you want.
-
A Case for Documentation - Confession 61
2016.03.18 23:24:06I thought I was done typing for today after spending all day writing up the documentation for North, but I guess I was wrong. Now, there's something that I've noticed every now and again when I take a peek at some of the new projects that pop up on Quicklisp.
-
The Great UI Warts - Confession 56
2015.06.11 22:02:19
It's now been about a year since I first started work on Parasol. In the process, I had to learn about UI programming in Common Lisp. It pains me a lot to say this, but it is definitely not one of the great strengths of CL. It certainly wasn't back then, and it still isn't now. Since Parasol started I learned a lot about Qt and in particular the Common Lisp bindings, CommonQt. While using Qt is your best bet at writing a native GUI, it just isn't as pleasant as writing other lisp code. Too many things can break, too many brick walls are laying in wait for you to hit your head against, too many things are simply not there infrastructure wise. However, as Parasol grew, and I grew tired of CommonQt's shortcomings, I started to write more and more systems to work around these problems and make the UI experience for the developer a better one. This is the goal of Qtools.
-
8th European Lisp Symposium - Confession 53
2015.04.23 10:48:49
I'm currently sitting in a lecture hall at the ETH in Zürich. It's 8 AM9 in the morning, and despite having had a long night's sleep, I'm still quite tired. It's amazing what two days of just listening and talking can do to you. It also feels so much longer than that, just because of all the things that happened. I suppose I should start from the beginning though.
-
Using CL+Qt - Confession 49
2015.02.12 22:33:19Some deem it unfortunate, others are not bothered by it at all, but the fact remains that Common Lisp does not have a standard GUI toolkit. It does have a native toolkit called McCLIM, but due to general outdated-ness it is not a very attractive choice. Generally I'm not one to linger long on decisions when it comes to learning something, so after quickly evaluating the options I chose to try CommonQt, a library to allow using the Qt framework with CL.
-
Running Tests in CL - Confession 48
2015.01.31 23:59:46I haven't come across this anywhere yet, but I think it's worth writing a quick entry about, just so that it's referable. So, writing tests is a common enough occurrence in programming and Common Lisp is no exception. The vast amount of testing frameworks is both a sign of the repeated desire to have a comfortable way to write tests and the general ‘I can do it better’ syndrome prevalent in Common Lisp. However, this blog is not about those things, but about another, much easier aspect: Running tests.
-
Retrospective 731520 Minutes - Confession 39
2014.11.16 21:18:50It's apparently been just 508 days since I first joined github. In that time I've written a lot of Common Lisp code and apparently made around 4000-5000 commits. I now want to make a retrospective and go over all the projects I've started. I'll omit some of the smaller, uninteresting ones though.
-
Paranormal Parasols - Confession 36
2014.11.04 16:01:41It's been too long since my last entry. I just haven't had much that I felt safe talking about. But, now that I'm mostly done with everything that occupied me for a while (Radiance and Purplish), I have more time available for other things. One of these things happens to be Parasol.
-
Adding Class-Bound Methods to CLOS - Confession 25
2014.08.22 19:31:57This confession is out of sequence because I wrote the initial sketch for it earlier and can only now publish it because it is rather heavy in code for a change and that required the new blog version. Anyway.
-
Templating the World - Confession 21
2014.07.31 19:59:40I have yet to find a single templating system I like, and I've even written my own. Multiple times. Yet, every time I do and every time I look at an existing one, there's just always so many things that bother me and I have yet to figure out a system that I might even begin to like.
-
A Code Interlude - Confession 19
2014.07.29 20:01:32As I could not come up with an idea for a confession all day, I present to you two small Common Lisp utility packages I wrote today. One of them is actually useful since it provides a very convenient way to benchmark your functions. The other is a very minimal implementation of something shell-like in CL.
-
Generic Functions and CLOS - Confession 11
2014.07.16 07:34:16One of the more difficult concepts to explain is that of generic functions, the way Object Oriented Programming (OOP) is done in Common Lisp. Since a lot of people seemed to be confused about it even after having read PCL, I will try my best to explain this anew here.
-
ASDF and Quicklisp - Confession 10
2014.07.15 11:34:34Continuing on in my endeavour to wrap up some loose ends and missing chapters of PCL I'll take a look at ASDF and Quicklisp. Neither of these are required to use CL —even for large projects— but they can help tremendously to get things done quick. So, let's see what they do and how they may be of use to you.
-
CL Symbols and Packages - Confession 8
2014.07.09 17:54:03While Practical Common Lisp is a superb primer on CL I feel like it doesn't cover packages and symbols early or in-depth enough as I still had to learn a lot about them afterwards. This topic as well as ASDF/Quicklisp and Slime/Swank are things that I'll talk about a bit in a few blog entries in the hopes that they may be useful to other people learning CL.
-
About Parasol
2014.06.11 20:32:23In an effort to get at least something productive done today I decided to take it upon me to talk a bit about my latest project, Parasol. I've attempted to write large GUI oriented applications before, but they never really went anywhere significant. This time seems to fare much better already though, as Parasol has, within barely a week, evolved into a tablet painting application with layers, history, infinite canvas and fancy colour pickers.