Previous Up Next

Diary, January 2024



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  31


Monday, January 1, 2024

Rainbow

Conny and I went on a walk this afternoon, just when we came outside our neighbourhood the sun came out and it began to rain a bit. We were greeted with a single, complete rainbow. It started on the left, became complete and ended at the right. I took several pictures, one of which is shown below. We met several other couples making a short walk and wish some of them a happy new year. We also talked a bit with Hans and about his profession related website. During the second part of the walk, it started to rain, but when we were almost home, we saw patches of blue sky and sunlite clouds again. We did not see much remains of fireworks. Maybe that is because most fireworks being sold now are in the form of boxes that shoot shells in the air that explode, which when fired are easy to despose of. We stayed inside during the night, but heard fireworks explosions till deep into the night. The Dutch are quite famous with respect of fireworks during the New Year's Eve celebrations. As far as I know, two people have died in the past days due to accidents related to the use of fireworks and 24 have been reported to have suffered eye injuries. Some cities have forbidden lay people from firing fireworks but in non of these cities it was enforced and it looks like people simply ignored it. There has been some discussions about forbidding the sale of fireworks completely. In some cities there is a lot of violence against police and first responders, which includes throwing illegal fireworks (said to be created by the Italian fireworks company Di Blasio Elio). About two hundred of people were arrested. At least a hundred car fires were reported. Even if fireworks are forbidden, I guess there still will be all kinds of trouble.

Wettest and hottest

2023 has become the wettest and hottest year in the Netherlands on record. The final numbers for precipitation are not in yet. The average precipitation for now is said to be 1060 mm against a yearly average of 795 mm. The average temperature was 11.8°C, which breaks the records of 2014 and 2020 when it was 11.7°C. I downloaded the zip file with weather data for weather station 290: Twente starting from 1951 till yesterday and wrote a short program to calculate the average temperature and the precipitation for each year. The average temperature for 2023 was 11.424°C and the total precipitation was 1115.2mm.


Monday, January 8, 2024

Snow

This morning, when I was biking to the office, it was snowing a bit. It was not enough to cover the ground. Yesterday morning, there was also some evidence that it snowed during the night. In the past days the wind changed from West to North-East causing a change in the weather from rain to clear skies causing the temperatures to drop below zero. It is usually that at the start or at the end of a cold period there is some snow.


Wednesday, January 10, 2024

B93: Anno Nu

I went to see the Anno Nu exhibition at the artist collective B93. I had somehow got the idea that this was not their annual group exhibition, so I was a little bit confused at first with all the very different art works on display. I did not find any of the work kind of exceptional and/or inspiring. Actually it is a kind of new year's reception for the artists and their close friends. I did not see anyone I knew or open for a talk, so I left after about ten minutes. It was around -4°C this evening when I was biking to and fro the exhibition. Last night, just like the night before, the temperature dropped to -6.9°C at the weather station at Twenthe Airport. Tomorrow the temperature are going up again.


Thursday, January 11, 2024

-9.4° Celsius

Last night, the temperature dropped to -9.4° Celsius at the weather station at Twenthe Airport. The record for this day is -14.2°C, which was in 1978. Tomorrow the temperature is expected to go up again. The previous two nights it dropped to -6.9°C. For many people the cold from the past three days, feels as exceptional. I searched for the days that the temperature was -9.6°C or lower in the past years. Even last winter, we had two such days. In the winter of 2020/21 there were six such days. In January 1984, there was a period of eightteen days during which, except for two days, the temperature was below -9.5°C.


Saturday, January 13, 2024

Harvest

This morning I walked to Herenboeren Usseler Es. I had a pea soup that was being served in a paper cup. I also had one Vegter's Roll, a kind of krumkake, with whipped cream, a traditional new years treat. This time the harvest was not very big. (What you get depends on the number of mouths you are paying for.) I brought the following home: They can be seen in the picture below:


Sunday, January 14, 2024

Taras Typeface: Graduation project

Yesterday and the day before, I read the graduation thesis Taras Typeface by Omaima Dajani (on Behance). I learned about the Taras typeface on Tuesday, July 4, 2023 when I visited the KABK Finals. I understand that the Master Type and Media is one of the few masters in Europe that focus on type design.

It was an interesting thesis to read. In the 'Conclusion and Reflection' section it says: "This journey has taught me that the more I know, the more I realize how much more there is to learn, and that every door that is opened leads to new doors." This also has been my experience with every subject that I encounter. Through reading this thesis, I learned a little bit more about Arabic typefaces and sensed something of its complexity, although I cannot read or write the Arabic script. Around 2015, I became aware of the special properties of the Arabic script when I had to implement right-to-left text with Uniscribe.

The Taras typeface is a modern Arabic typeface, designed specifically for editorial use. It combines classical aesthetics with contemporary elements, drawing inspiration from the intricate details of the Thuluth style. Thuluth is an Arabic script variety of Islamic calligraphy. The typeface comes with five weights and a light and a heavy abstract version. On page 100 of Section 04.3 it describes how Dajani tested the abstract versions and I thought it was a really clever way of doing it. Although she writes that the results of the experiment are limited and cannot be generalized, I still find that the six findings she reports, make it sound like it is quite solid.

On page 49 of Section 03.1 a Thuluth calligraphy sheet written by the calligrapher Yaser AlAshry is given. The text explains how the words are slightly slanted down (in the writing direction). If I understand the written text on page 54 correctly, it looks like the last (part of) letter of each word is written under the first letters of the next word. That is an interesting way to signal word endings, one that I did not know about yet. I always find it interesting to discover some new unique property of a language or script. This also made me realize that the font rendering engines (for OpenType, TrueType and such) are maybe too limited for script like the Arabic script. The function of a rendering enging is to take a text, convert it into glyphs, position those relative to each other and rasterize them. I wonder if there are already good rendering engines for Arabic calligraphy or if there are font engines that support some of the features found in calligraphy, such as the slanting found in the Thuluth style.

I presume that writing a thesis like this takes quite an effort especially if you want to incorporate samples of all the different versions of the font design and, in some places, annotate these to clarify what has been changed between these versions.

Some interesting links I found in the past days related to the subject of the thesis:

Some links to resources mentioned in the biography:


Tuesday, January 16, 2024

Snow

Yesterday, there was some snow in the morning. It was not covering the ground. I guess there was at most 1 cm of snow on the table in the back garden. During the day, we had some snowing but it did not stay and most of the snow that fell earlier, melted away. In the evening there was some more snowing that partly stayed. This moring there was about 4 cm of snow on the table in the back garden. The snow was also on the plants and trees. Conny took some pictures. One is shown below. The snow did not completely cover the ground. There was a little snowing during the day. Most of the snow stayed. It is going to be cold this night.

Trying revng

This evening, I had a look at revng, which is a static binary translator that analyze an ELF binary and emit an equivalent LLVM IR. I was hoping it could help me in my (very slow) process of debugging the emulator I have been working on. I installed and executed it with the following commands:
git clone https://github.com/revng/orchestra
cd orchestra/
./.orchestra/ci/install-dependencies.sh
pip3 cache remove orchestra
pip3 install --user --force-reinstall https://github.com/revng/revng-orchestra/archive/master.zip
orc components
orc clone revng
orchestra update
orc install revng
orc shell
(orchestra) revng translate ~/git/Emulator/x86/artifact/cc_x86
Which produced a message asking me to submit a bug report and include the crash backtrace. I submitted a bug report as issue #345. I hope I have done this correctly.

(follow-up)

Then I got the idea that maybe I should execute all the steps in parallel with the emulator to see when it deviates. That might help me locate the bug.

In the past month, I spend some time analyzing the execution of M2 and in doing so wrote time some notes. I noted that the function type_name contains a call to functionlookup_type where the first argument is global_token->s. Which in the file M2-0.M1 is translated to:

mov_eax, &GLOBAL_global_token
mov_eax,[eax]
# looking up offset
# -> offset calculation
mov_ebx, %4
add_eax,ebx
mov_eax,[eax]
push_eax	#_process_expression1

The type of global_token is a pointer to token_list, which is defined as:

struct token_list
{
    struct token_list* next;
    union
    {
        struct token_list* locals;
        struct token_list* prev;
    };
    char* s;
    union
    {
        struct type* type;
        char* filename;
    };
    union
    {
        struct token_list* arguments;
        int depth;
        int linenumber;
    };
};

It could be that the calculated offset is incorrect. I would expect it to be 8 or 16. Lets see which offset is used in the function new_token in which the s record field is allocated and filled. It looks like there also an offset of 4 is used.

lea_eax,[ebp+DWORD] %-16
mov_eax,[eax]
# looking up offset
# -> offset calculation
mov_ebx, %4
add_eax,ebx
push_eax    #_common_recursion
  Calling calloc
pop_ebx     # _common_recursion
mov_[ebx],eax

So, maybe there is an error in the copy_string function. It seems to work correct. (I already added some debug statements, so it seems, I already checked this.) Studying the assignment statements in new_token, it seems there might be something wrong with the offsets. Below the code from the file M2-0.M1 preceded with the matching statemenst from the file M2-0.c:

#    current->prev = token;
mov_ebx, %4
add_eax,ebx
push_eax    #_common_recursion
mov_eax, &GLOBAL_token
mov_eax,[eax]
pop_ebx     # _common_recursion
mov_[ebx],eax
lea_eax,[ebp+DWORD] %-16
mov_eax,[eax]

#    current->next = token;
push_eax    #_common_recursion
mov_eax, &GLOBAL_token
mov_eax,[eax]
pop_ebx     # _common_recursion
mov_[ebx],eax
lea_eax,[ebp+DWORD] %-16
mov_eax,[eax]

#    current->linenumber = line;
mov_ebx, %8
add_eax,ebx
push_eax    #_common_recursion
mov_eax, &GLOBAL_line
mov_eax,[eax]
pop_ebx     # _common_recursion
mov_[ebx],eax
lea_eax,[ebp+DWORD] %-16
mov_eax,[eax]

#    current->filename = file;
mov_ebx, %8
add_eax,ebx
push_eax    #_common_recursion
mov_eax, &GLOBAL_file
mov_eax,[eax]
pop_ebx     # _common_recursion
mov_[ebx],eax

The file M2-0.M is produced by process 15, which executes the command:

./x86/artifact/cc_x86 ./x86/artifact/M2-0.c ./x86/artifact/M2-0.M1

I modified the emulator program such that it would generate a program for this process and I spend some time looking at it.


Friday, January 19, 2024

Amsterdam

Today, I went to Amsterdam. Some things that I had hoped to attend, did not work out. But I was surprised with other things. I train, There was still some snow left over in most parts of the country. Even in Amsterdam, I encountered some slippery spots. In the train I spend some time reading the book How to Change Your Mind by Michael Pollan. It gave me some things to think about. It surprises me a little that some people after a psychedelics trip come to the conclusion that consciousness precedes matter, while it so clear that the trip was triggered by a chemical compound working on the brain.

I first went to bookshop Het Martyrium, which used to have a great selection of cheeply priced books. But it looked like the shop was reduced to half of it size and there were no cheaply priced books anymore, From there I walksed to FOAM. Just over the bridge over De Keizersgracht, four people were studying lichens on the stone wall with small magnifying glasses. It might be that they are from the Dutch Bryological and Lichenological Society. At FOAM, I saw the following exhibitions, together with lists of photographs I liked:

Next, I went to De Slegte bookshop. At 14:13, I bought the book Kraftwerk: Future Music from Germany written by Uwe Schütte in English and published by Penguin Books on Wednesday, August 17, 2022, ISBN:9781802060980, for € 8.95. I discovered that the McDonalds at Muntplein was temporary closed. I wanked toward Spui. Every Friday there is an openair bookmarket there. I saw some interesting books but they were a bit oot expensive for my liking. I visited the American Book Center and around three o'clock in the afternoon, I walked to Galerie Ron Mandos. I had understood from several websites that several galleries were having an opening afternoon, starting at 15:00, which was the primary reason for me to travel to Amsterdam. But the gallery was closed. I continued to andriesse & eyck to see the exhibition Woorden Weelde. There I heard that the opening was at five 0'clock and that I was too early. I had a quick look at the works in the exhibition and did not see any works by Peter Struycken. I did see three works by Carel Blotkamp. (Later, I realized that one of those might have been based on a work by Peter Struycken and that that might be the reason he was included in the exhibition. It might also be that I did not look carefull enough.) After a short chat with Zsa-Zsa Eyck and a proomise to return at five, I left again. I visited the bookshop Architectura & Natura. Many interesting books but all quite expensive. I went into a search for a McDonalds. I had a 'Chili Chicken' at the McDonalds at Nieuwedijk 70. From there, I walked to bookshop Scheltema Boekverkopers. I felt that the rasmj department was a little bit more organized. I was getting tired and decided not to return to gallery andriesse & eyck and instead I went to De Bijenkorf to look at the book section there, because I had received a gift card that I could spend there. I did not find anything interesting to buy. I walked over to Julia's where at 17:52, I ordered a medium Penne Pesto Pollo with the voucher that came with the day-trip train ticket that I had bought. (I usually use such a day-trip ticket when it is cheaper than the regular train tickets.) In the train, I continued reading in the book, but at one point (probably when I had to show my ticket), I skipped a lot of pages, which I discover only much later. I also started working on this at my Aspire Acer notebook.


This months interesting links


Home | December 2023 | February 2024