Previous Up Next

Diary, June 2025



Sun Mon Tue Wed Thu Fri Sat
  1   2   3   4   5   6   7
  8   9  10  11  12  13  14
 15  16  17  18  19  20  21
 22  23  24  25  26  27  28
 29  30


Sunday, June 1, 2025

Blackletter

I started reading the book Designing Type by Karen Cheng. On page 14 it has a section on 'Type Classification' that talks about the French typographic historian Maximilian Vox. I noticed that his classification, now known as Vox-ATypI classification did not include Blackletter, also known as Gothic script, Gothic minuscule or Gothic type, which was a script used in Germany and also the Netherlands for official publications, where it was known as Textualis. Blackletter and also Gaelic type were later added to the classification. I cannot remember having seen Gaelic type before, which uses the insular G letter form for the letter g. (Another example of how reality is almost always more complex than it appears on first sight.)


Monday, June 2, 2025

Proclamate Light

I figured out how to use your own fonts on a web page. I downloaded the Proclamate Light font designed by Paul Lloyd. Below an example of the usage with the text of what I wrote yesterday. Just before the paragraph, I added the following in the HTML:
<style>
@font-face { font-family: 'proclamate_lightlight';
    src: url('proclamate_light-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal; }
.blackletter { font-family: 'proclamate_lightlight'; }
</style>
and I used '<p class"blackletter"><font size="+1">' for the paragraph. I am not sure if this works for all browsers, so if it shows as normal text, it might by my fault.

I started reading the book Designing Type by Karen Cheng. On page 14 it has a section on 'Type Classification' that talks about the French typographic historian Maximilian Vox. I noticed that his classification, now known as Vox-ATypI classification did not include Blackletter, also known as Gothic script, Gothic minuscule or Gothic type, which was a script used in Germany and also the Netherlands for official publications, where it was known as Textualis. Blackletter and also Gaelic type were later added to the classification. I cannot remember having seen Gaelic type before, which uses the insular G letter form for the letter g. (Another example of how reality is almost always more complex than it appears on first sight.)

Compiled first program

I managed to compile a program with the C compiler that I am developing. The commit 6ac84a5d contains the version of tcc_cc.c with which the hello.c program can be compiled to the stack_c language, and compiled to an ELF with the stack_c compiler and the life-bootstrap programs blood-elf, M1 and hex2. Below the hello.c program.
#include <stdio.h>

int main(int argc, char *argv[])
{
    fputc('H', stdout);
    fputc('\n', stdout);
    return 0;
}
The include directive is ignored by the compiler and the stdlib.c file is included. The relevant parts of this file are:
const FILE *stdout = 1;

int sys_int80(int a, int b, int c, int d);

int fputc(int c, FILE *stream)
{
    int buffer[1];
    buffer[0] = c;
    return sys_int80(4, stream, buffer, 1);
}
The function sys_int80 represent the software interrupt that are used in Linux for system calls. I am still struggling a bit how array variables are dealt with. In the above fputc function, in the call to sys_int80 the arguments stream and buffer are slightly handled differently. For the variable stream the contents is retrieved, while for the variable buffer, which is an array, the address is used. The compiler compiles this to the following stack_c program:
int stdout
void fputc
{
    int stream stream =:
    int c c =:
    int buffer
    buffer 0 4 * + c ? = ; 
    4 stream ? buffer 1 sys_int80 () return
}
void __init_globals__ ;
void main
{
    int argv argv =:
    int argc argc =:
    __init_globals__ ()
    72 stdout ? fputc () ; 
    10 stdout ? fputc () ; 
    0 return
}
void __init_globals__
{
    stdout 1 = ;
    return
}


Tuesday, June 3, 2025

AI agents for software engineering

Today, I came across the article My AI Skeptic Friends Are All Nuts that argues that there are no reasons not to use AI agents as a software engineer. In the past half year, I have tried to use agents in my work, but they never have helped me much. When, this morning, I asked ChatGTP to generate the code for a M4F MCU that implements the VirtIO code for accessing the GPIO through RPMSG using FreeRTOS, it produced two answers that were both incomplete and incorrect. (I have added links to the acronyms to show that these are not very obscure things, suggesting that what I ask is not something extremely obscure.) Someone replied, acknowledging that it was outside his domain, that I could break down my prompt into separate prompts. I followed this approach and again got some answer that was neither complete nor correct. When I made the suggestion to ChatGTP to take Section 5.18 of Virtual I/O Device (VIRTIO) Version 1.3 into account, it produced almost the same code preceded with some babbling from the document, but did not use anything from the specification, not even the code fragments mentioned in the section. I understand that a large group of software developers are using AI agents, probably even more than half, but I get the impression that these are software developers in domains where there is a lot of repetition. For areas that are less common, such as embedded software development for specific devices, AI agents probably do not have enough training materials, also because a lot of embedded software is proprietary. Examples that are provided by companies selling embedded devices are often rather simple. For certain application domains, such as aviation and medical, there are often strict coding standards that have to be followed.


Thursday, June 5, 2025

Book

At 16:47, I bought the book Standbeeld: Kunst en woningbouw edited by Edwin Boering and Jaap Huisman, written in Dutch, and published by Gemeente Amsterdam on Thursday, June 6, 1991 from Het Goed for € 0.99.


Saturday, June 7, 2025

KunstenLandschap 2025

I biked around the route of KunstenLandschap 2025. At 15:11, I bought the entrance and got a wristband, a small book with details about the art work and artists, and a map with the route. There was some rain while biking around. I stayed inside some shipping container along the route during some of the worst rain. I found the following artist noteworthy (including the number of the location where they were shown):

At Rijksmuseum Twenthe, I watched two new exhibitions. From herman de vries. 70 jaar de natuur als kunstwerk ('herman de vries: 70 year the nature as artwork'), I found the following works noteworthy:

From the exhibition Ergens tussen hoop en vrees ('Somewhere between hope and fear'), I found the following works noteworthy:


Monday, June 9, 2025

Long low slow baden

I went biking again today and followed some part of route of the KunstenLandschap 2025. The highlight of the day was being a subject of the Long low slow baden installation by Gemma Luz Bosch. It was rather deeply relaxing and special experience. I saw the installation last year on June 28 when it was shown on the Graduation show KABK exhibition.

This afternoon. I first went to Concordia. I first had a look at the shower tray of the Paviljoen #4 exhibition that I saw on May 24. The bucket with blue coloured water had emptied completely and was removed. Next, I saw Doublet #8, a colaboration between Peggy Franck, who painted the windows and Christine Moldrickx, who I guess contributed the two dia projectors. I found the exhibition somewhat minimalistic. On the first floor, I saw the exhibition Kunstblikken: De Spiegel Binnenin with works by highschool students that they made in collaboration with some artists. I found one lino print rather interesting. Next, I (re)visited the following locations:

At Rijksmuseum Twenthe, I walked around and found the following works noteworthy:


Friday, June 13, 2025

First tropic day

Today, the temperature at Twente Airport has gone up to 30.4° Celsius, which does not beat the record of 32.8° of 1964, but it does make the first tropic day according to the definition of the Royal Netherlands Meteorological Institute. The predition is that tomorrow it will even become hotter and probably break the record for that day.


Saturday, June 14, 2025

32.2° Celsius

The temperature at Twente Airport has gone up to 32.2° Celsius, which breaks the record of 29.5° for this day that was reachted in 1980. There was a prediction for rain with thunder and lightning, but we did not get any.


Tuesday, June 17, 2025

Book

At 12:10, I received the book Natural relations : eine Skizze written by herman de vries in German and published by Verlag für Moderne Kunst in 1989, ISBN:3122531725, which I had bought on Wednesday, June 11, 2025 at 12:34 from Antiquariat & Verlag Winfried Jenior for € 50.00. I decided to buy this book after I saw it on June 7 at the exhibition herman de vries. 70 jaar de natuur als kunstwerk. I do not think I am ever going to read this book. It is just one of those peculiar books I like to add to my collection of books.


Wednesday, June 18, 2025

A milestone in developing compiler

I achieved another milestone in developing a C compiler. The compiler can now compile the stack_c.c program, such that when the resulting executable is run on the output produced by the compiler with stack_c.c as input, it produces the same M1 file. The last bug fixes can be found in the commit 5808d49c. The next step will be to try to compile the source of the compiler itself.


Friday, June 20, 2025

The Way Things Unfold

I went to the opening of the Creatieve Broedplaats Enschede (Dutch for 'creative breeding ground') at their new location, which is at the same location as the first company I worked from 1990 to 1994. There I also saw the exhibition The Way Things Unfold. I found the following works noteworthy:


Sunday, June 22, 2025

Biking along MUPIs

This morning, from 7:19 till 10:35, I biked around the city to visit all the MUPIs that had a poster on it made by one of this year graduates of the AKI. This year, the MUPI in the town Glanerbrug was including again, making the route a bit over 35Km long. I left early, because the temperature were predicted to get over 30° Celsius this afternoon. I calculated the route with the latest version of the ParseMUPIkml2.cpp program and a bucket size of 1000 solutions for each pass. I made some modification to the program. I added a command line option (-h) to add my home to the locations to be visited. The program also writes the names of the locations to a text file, which I printed out and took with me. I had to add an additional MUPI to the MUPIs.kmz file. I also had to flex the conditions for mapping the pins in the Aki Finals 2025 map to the locations of the MUPIs, because they were not all within 15 meter. The pin marked 'Point 46' had a photograph of a work by Luna Smiesing on it. I found the photographs of the following graduates on the MUPIs noteworthy:


Thursday, June 26, 2025

Void functions

The C programming language has functions that usually return a single value, except when they are defined of the type void (with the keyword void). In the past three days, I have been debugging the C compiler, I am debugging. I have been learning how to debug the code it produced with GNU Debugger using commands to step through the instructions and inspect the values of registers. I also used the trick to insert if (1); statements in the code of the compiler, that would then generate a label in the machine code that I could use in the break command to make the debugger stop at those locations. Yesterday evening, I discovered the cause of the bug. It was related to the void functions and some parts of the code being generated assuming that all functions return a value. This morning, I realised that to fix this bug, I could just change the behaviour of void function such that they do return a value, instead to making the compiler smart in tracking when a void function is called and special action should be taken to deal with the function being void.


Friday, June 27, 2025

AKI Finals

I went to see the AKI Finals exhibition. Below a list of the students whose work I found noteworthy, which is very subjective and often based on the first impression, in the order, I encountered them.

At 18:41, I bought the Finals catalogue for € 10.00, which was packed in a plastic back. At home I discovered that it had almost empty pages with just a new of a student on each page. In the middle it had a stack of stickers, one of each student. The stickers fit on a 'frame' printed on the empty pages.


Saturday, June 28, 2025

Self hosting compiler

I have achieved another milestone in developing a C compiler and that the compiler is now able to compile the source of itself such that the resulting executable when called with the source will return the same output. I already achieved this some days ago in the commit 9fb0e126, but the compiler failed to compile the program stack_c.c, which can translate the output from the compiler to assembly language. After some debugging, I found that cause and implemented some fixes. The next step will be to see if the compiler can compile the source of the Tiny C Compiler. I already know, I will have to extend the standard library, a partial implementation of the C standard library for this.


Sunday, June 29, 2025

AKI Finals (second time)

Today, I went to see the AKI Finals exhibition for a second time, as I am just to day. My experience is that it worth to visit an exhibition more than once, because a second (or third) time, you often notice things you had not seen the first time. It was rather quiet with respect to both visitors and students being present. I walked around the whole exhibition. With the exhibition of the following students, I spend some more time or talked with the student a bit:


Monday, June 30, 2025

Garden

Our garden in the back is getting full with plants and trees. Where there used to be grass on the left side (viewed from the house), there are now growing two trees, which are already about two meters high. We did not plant those trees. They just arrived as a seed. This is the case with some more plants in our garden. But there are also some tall daisies that we did plant some years ago. It looks like some of the plants we planted last year in the early spring, are now surfacing. I now realise that some plants only sprout if they have experienced the cold of the winter. It looks like there are some Jerusalem artichokes growing in the garden in front of our house. The little plant, we assume is growing from a seed of our magnolia, is still rather small, not more than 4cm high, and only has five leaves now. But I read on the internet that they focus on growing roots. I also noticed some flowers in our magnolia. This evening, there was also a pleasant smell of flowering trees outside and in the house.


This months interesting links


Home | May 2025 | July 2025