mmaldacker's comments

mmaldacker | 9 years ago | on: When Haskell is Faster than C (2013)

1. The "reverse-complement" problem here is simply about reading a file, reversing strings and mapping a small set of characters to another one and printing the result. This is really a simple problem and there aren't a lot of optimisations to be done. Really this about having the fastest I/O library and thus doesn't seem like a good way to compare C and Haskell. If you look at the various solutions presented on benchmark games, the core algorithms are all the same and they only differ on how to read/write and the use of threads.

2. The author talks about the importance of reducing cache misses due to pointer indirection and then proceeds by implementing a character buffer as a linked list of small buffers...

3. The C version reads and writes character one by one, this can be greatly improved by reading/writing bigger chunks at once. Actually, the author points out this optimisation but says "that would require significant changes to the code;". So the author spent time optimising the Haskell version, but spending time optimising the C version is too much work? And then arrives at the conclusion Haskell is faster?

4. Commenters on the author's blog cannot reproduce the results...

mmaldacker | 10 years ago | on: Why the Netherlands Is Telling Its Tech Startups to Leave the Country

> the Netherlands has fewer than 17 million residents and a language that nobody else speaks

If you don't count the flemish in Belgium (about 6-7 million people). In addition, (almost) everybody speaks english.

> One of the hardships Dutch startups face, says Kroes, is overcoming the natural Dutch tendency to be humble.

Really? This is not the impression I get from the Dutch. Belgians love to make fun of Dutch people for being arrogant. There is also a very strong culture of entrepreneurship in the Netherlands, starting and having a successful company is highly regarded. And there are already a few successful startups, like ticketswap which recently opened in several other countries.

mmaldacker | 11 years ago | on: Can C++ become your new scripting language?

dictionary is not necessary, the C++ impl just counts the number of words. This can be written as:

  int word_count(const char *const filename)
  {
    std::ifstream file{filename};
    return std::distance(std::istream_iterator<std::string>{file}, {}); 
  }

mmaldacker | 11 years ago | on: Japan maglev train breaks world speed record again

Upgrading and maintaining a transport infrastructure is necessary for big cities regardless of the wall circumstances. You don't think London, Paris and other big metropolitan cities in Europe spend billions on upgrading and maintaining their public transport infrastructure? I don't see Berlin having a completely automated metro like the DLR in London, or NFC cards like pretty much any other metro in Europe.

mmaldacker | 11 years ago | on: Japan maglev train breaks world speed record again

>Back in the 70s, you could rock up at the airport twenty minutes before your flight left

This still exists, for example Tegel airport in Berlin. Also, in the 70s there was waaaaaay less traffic in airports so it is simply not a fair comparison.

>Sadly, I bet the way we'll end up equalizing this will be that somebody will eventually bomb a TGV and we'll have to start doing the two hour confiscate-your-kids'-apple-juice routine at the train station too.

http://en.wikipedia.org/wiki/2004_Madrid_train_bombings

http://en.wikipedia.org/wiki/7_July_2005_London_bombings

mmaldacker | 11 years ago | on: Japan maglev train breaks world speed record again

>and also remember Berlin's system is essentially new and was rebuilt after reunification so you are looking at a modern system.

After the reunification, they only had to reconnect the lines that were separated by the wall. Only a few places needed some extensive work. You probably meant WW2 where most lines were destroyed. Note that Berlin was also one of the first cities in the world to have a metro system.

>No one is keeping you from remaining in Germany, are they? I can guarantee you they will approve your work permit and you can become a resident and eventual citizen.

The horror!

mmaldacker | 11 years ago | on: Linus Torvalds on C++ (2007)

> While implicit operator overload was probably a C++ mistake

are you talking about the implicit conversion operator or operator overloading in C++?

For the former, it has been vastly improved in C++11 with the addition of explicit conversion operator. For the later, some very important capabilities of C++ rely on operator overloading namely the assignment operator (copy/move assignment) and the function operator (allows what C++ calls functors). Another useful thing with operator overloading is allowing the creation of generic functions that work on existing types (int, float, ..) and user defined types, for example std::accumulate.

mmaldacker | 11 years ago | on: Why did I wake up just before my alarm clock went off?

Not a single data point in this theory. The reason you sometimes wake up just before the alarm (at least I wake up before my alarm because I actually check the time) is because of conditioning. Our biological clock is pretty accurate. An example of that, in university I could easily sleep on the week ends till noon. Now that i've been working for many years and waking up regularly at the same time during the week, I wake up naturally around the same time during the week end (unless I went out late the day before of course).

mmaldacker | 11 years ago | on: Quake on an oscilloscope

It's a low pass filter. And I'm assuming the low-pass is used in the DAC to cut off high frequencies it cannot handle.

mmaldacker | 11 years ago | on: 15-line hash table in C

In this case, it makes no difference. The array is used instead of a struct to save a few lines of code and making the title of this post more impressive.
page 1