Scala Days 2019

Scala Days had a tenth anniversary in 2019. It is an annual conference about Scala, which I like to visit, when possible. There is some confusion as to what is meant: Where this the 9th, 10th or 11th Scala Days? Where the first Scala Days 9, 10 or 11 years ago? The truth is, that …

Share Button

hashCode, equals and toString

In many programming languages we are urged to define methods hashCode, equals and toString. They are named like this in Java and in many JVM languages or they use similar names. Some languages like Perl and Scala provide decent mechanisms for the language to figure these out itself, which we do most of the time …

Share Button

ScalaUA 2019

In March 2019 I have visited ScalaUA in Kiev. It was interesting. I attended the following talks: Thinking Functionally by John A. De Goes Streaming data processing with Apache Spark by Roksolana Diachuk Theory of Constraints in Programming: Beyond Problem-Solving by Anatolii Kmetiuk Video Q&A session with Martin Odersky by Martin Odersky and Jon Pretty …

Share Button

Unicode and C

It is a common practice in C to use arrays of char as strings. The 0 is used as end marker. The whole thing was created like that in the 1970s and at that time it was kind of cool to get away with one less language feature and to express it in terms of …

Share Button

Flashsort in Scala

There is now also an implementation of Flashsort in Scala. In order to solve the requirement of sorting part of an array that is needed as part of flashsort, an heapsort implementation in Scala that can be constrained to a part of an array has been included as well. Heapsort was chosen, because it can …

Share Button

Flashsort in Ruby

Deutsch There is a simple implementation of Flashsort in Ruby, after having already provided an implementation in C. The C-implementation is typically faster than the libc-function qsort, but this depends always on the data and on how well the metric-function has been written, that is needed on top of the comparison function for Flashsort. You …

Share Button

Not all projects are on ideal paths II (Tim Finnerty)

This is another story of a project, that did not go as well as it could have gone while I was there. From unsuccessful projects we can learn a lot, so there will be stories like this once in a while. The first one was about Tom Rocket. Tim Finnerty It was the time, when …

Share Button

LongDecimal

Disclaimer: This article is an occasion, where you might need some of the presumably useless mathematics that you might have learned in school and university. If this bothers you, maybe you should wait for the next article in about two weeks time. LongDecimal is a library that I have provided for Ruby. It is available …

Share Button

TruffleRuby

The language Ruby is one of the most beautiful languages. A lot of things can be done, it has a good level of abstraction, it has chosen some very good defaults, has provided some great ideas that I have not discovered in any other language that I know well and provides a lot of flexibility. …

Share Button

How to draw lines, circles and other curves

These ideas were developed more than 30 years without knowing that they were already known at that time… Today the graphics cards can easily do things like this in very little time. And today’s CPUs are of course really good at multiplying. So this has lost a lot of its immediate relevance, but it is …

Share Button