The 44th episode of the Stackoverflow podcast contains an interesting discussion on what I have liked to call “the tyranny of syntax”.They note that for some reason people are scared of anything that does not look like C, but still lament some of the less good design patterns in C, such as the fact that closing braces have no annotations as to what is being closed. They also talk about the use of “little languages”, and an old favorite song of mine.
The best bit is the discussion around named parameters and how that was introduced into Visual Basic for Application in Excel — and at the same time they reduced the argument counts to most functions by replacing them with manipulating properties of objects. I think that approach does make some sense, if you have something that lends itself to that kind of expression. Their comparison of having a single function call with 83 arguments to change the style of text in Word by silently effecting a dialog box, or actually setting each of 83 properties of a dialog box object makes eminent sense… Sense that applies to simulators as well: in Simics, we do have a system like that, with attributes on all objects in the simulation that can be set to change their behavior and connections. Trying to configure that in the SystemC-style with function calls and constructors from scratch would be a pain, definitely.
Another topic that struck a chord with me was the notion that we are moving towards a world of “little languages” built for particular purposes. I definitely think this is the right way to go, as domain-specific languages do make getting particular things done easier. The more general a language is, the worse it is at any particular task. Better then to use a smaller language built to do one thing. As Jeff put it, for databases uses SQL, for text processing using Perl, etc… Using a multitude of languages is the hallmark of good software design and a natural instinct for a computer scientist.
They also found a YouTube video of the old computer science (CS) song “Write in C“. They do not seem to get that this is a really old song, I remember singing it way back when I was a fresh undergrad CS student here in Uppsala… and it was part of the first edition of our nice leather-bound songbook called “Manualen”. The lyrics are starting to feel a bit dated, but it is still a very elegant piece of writing that I think took place in the mid-1980s, judging from the other languages referenced.
Anyway, an unusually listen-worthy edition of Stackoverflow.