Wrong assumption: when an exception occurs, a stack unwinding occurs, which means that the relevant destructors of objects are called in the appropriate order.
Today I wanted to make some experiments with CGI on my newly-installed Ubuntu 16.04. There are a few steps to take before starting to experiment, and I’m writing them down here in case anyone else wants to try something similar.
Frustrated by several attempts at creating GUI-based programs that I’ve tried in the past, I decided to try how differently the story could end when using a language that promises enlightenment to its users. I ended up writing Calculon, a simple calculator, and in the process learned a couple of things about Racket and the
racket/gui module (and paid homage to one of the best cartoons in history).
As promised, this is a wrap up of my experience concentrating for (slightly more than) 12 weeks on only 2 subjects. For this first stint, I chose to learn Racket and to read Computer Systems: A Programmer’s Perspective. Not long ago I have lost interest in providing ultimate motivations for what I do in my free time; I’ll just stick to what happened. (I can’t promise I won’t motivate everything else, which is not ultimate.)
I remembered a simple trick I used to know, but that could not remember on the spot, to solve a problem in understanding the exact lifetime of C++ objects.
In the hot, cruel desert of this space, wind howled in solitude. A stone statue lay on the ground like a man asleep, succumbing to its own weight, mental and physical. For more than one year, no stirring. The sun shines on again today. A wanderer passes by on a camel, and looks at the strange statue. He swears that he saw it moving.
I am always on the lookout for ways to enhance my proficiency with programming. In the last months I have come to agree with the common saying that, with programming languages, you only learn by doing.
Unit testing is a fundamental activity in software development, even if not as widespread as it should. As C++ has been around for quite some time, several libraries are available for carrying out this activity. This week I’ve had a look at cpptest. In the future, I plan to compare compare it to another pretty popular test library, googletest.
I was looking for some practice with DBs, and my choice fell on the SQLite project, maybe only because it looked lighter than PostgreSQL, which I also plan to play with. My first general impression about the API is that it looks a little too much C-oriented, even though I am not sure whether this is a good or a bad thing, and I am ignorant about the latitude of choice an engineer has when designing an API that has to interact with applications written in either C or C++.