PinnedThe Return of the Native: part 3 — Being a TouristWe had an amazing trip to Skye over a six-day period in October. By car, it’s a two-day trip each way although that does allow for stops…Nov 9, 20231Nov 9, 20231
Yet Another Article on MonadsHow to think about Monads when programming in Scala.Nov 4, 2024Nov 4, 2024
I hope you’re doing wellWhose idea was it to instruct the writers of letters and emails to begin with this insincere introduction?Nov 4, 2024Nov 4, 2024
Why is there no right-handed list type in Scala?In theory, at least, lists come in two types: left-handed and right-handed. What’s that you say? I’m using the term left-handed for lists…Sep 27, 2024Sep 27, 2024
The Return of the Native: Part 2Hard to believe, but more than one month of our twelve has already passed and we’re only just feeling somewhat settled in. We did have…Oct 17, 20232Oct 17, 20232
The Sherlock Holmes Guide to Programming, Debugging, and Performance TuningThree useful guidelines for good programming and systematic debugging.Jul 31, 2023Jul 31, 2023
Scala’s versatile unapply methodPreparing some code for my latest batch of Scala students, I wrote a Scala FizzBuzz. The straightforward, obvious, way to write the…Jan 7, 2023Jan 7, 2023
Many many years ago, I had problem in FORTRAN which took me a very long time to find.Jul 25, 2022Jul 25, 2022
The Arbitrary Substitution PrincipleThe Arbitrary Substitution Principle (ASP) relates to code such that, if you changed the order of the terms of an expression, the code…Jan 26, 2022Jan 26, 2022
Published inCodeXAn identifier, by any other name, …There are times when it’s obvious what we should call a variable or method parameter:Oct 31, 20211Oct 31, 20211
Published inCodeXFuzzy, lazy, functional numeric computing in ScalaThis is the third and (thankfully) the last of my articles on Number, an open-source library of things numerical. The previous articles…Aug 31, 2021Aug 31, 2021
Number (part 2)Following on from my previous article on Number, an open-source numeric library in Scala, I will discuss the mechanism of lazy expression…Aug 25, 2021Aug 25, 2021
Published inCodeXNumber (part 1)Back when I was starting out in programming (late 60s), I wondered why scientific/math computing so often got things wrong. In those days…Aug 10, 2021Aug 10, 2021
Published inCodeXFlog: a functional logger for ScalaLogging can, unfortunately, be either a blessing or a curse. For production systems, logging is a discipline all of its own. But often, it…May 12, 2021May 12, 2021