Lightweight Multicast Events

A multicast event is an event that can have multiple listeners (or event handlers). Some languages (such as .NET languages) have built-in support for multicast events. This article shows an implementation for Delphi. This implementation is very lightweight. In fact, it takes no more resources than a regular Delphi event if there is just a… Continue reading Lightweight Multicast Events

Patterns · Tips & Tricks

The Curiously Recurring Generic Pattern

This curious little pattern can be helpful for certain problems that involve generics. We’ll look at what it is, and at a couple of use cases for it. What is it? The Curiously Recurring Generic Pattern (CRGP) is a pattern where a class TFoo derives from a generic class, using the class TFoo itself as… Continue reading The Curiously Recurring Generic Pattern

Tips & Tricks · Uncategorized

Happy New Year from Team Grijjy!

Best wishes to all fellow Delphi developers and the team behind Delphi! Let’s have some fun with FireMonkey! The little video above is a recording of a small (3D) FireMonkey app. You can test it out yourself by cloning our JustAddCode repo. There, you will find it in the HappyNewYear subdirectory. For those of you… Continue reading Happy New Year from Team Grijjy!

Foundation · Libraries · Tips & Tricks · Uncategorized

Build your own Error Reporter – Part 3: macOS Intel

A while ago, I started a small series about trapping exceptions and turning them into an error report for consumption by your development team. This enables you to get information about errors that happen out “in the field”. The first part focused on the iOS platform and the second part on Android. In this part… Continue reading Build your own Error Reporter – Part 3: macOS Intel

Libraries · Optimization · Uncategorized

High-Precision Floating-Point Types for Delphi

If Single and Double precision floating-point types don’t cut it for you, then the Neslib.MultiPrecision library may be just the thing. It provides up to 4 times the precision, while still being pretty fast compared to arbitrary precision libraries. Neslib.MultiPrecision Neslib.MultiPrecision is a personal project that adds two additional floating-point types for use with Delphi.… Continue reading High-Precision Floating-Point Types for Delphi


Deployment Manager now Open Source

The Grijjy Deployment Manager (DeployMan) is a tool to simplify the deployment of files and folders for iOS and Android apps written in Delphi. It is especially useful if you need to deploy a lot of files, such as 3rd party SDKs. Information and Usage The Deployment Manager (DeployMan) was first introduced in the blog… Continue reading Deployment Manager now Open Source

Libraries · Optimization · Tips & Tricks · Uncategorized

An XML DOM with just 8 bytes per node

I present a small XML library that parses or creates XML documents with an extremely light-weight DOM that uses just 8 bytes per node. This post shows some of the interesting algorithms that make this possible. Another XML Library? I know what you are thinking: not another XML library! And you would be right, especially… Continue reading An XML DOM with just 8 bytes per node

Foundation · Patterns · Tips & Tricks · Uncategorized

Custom Managed Records for Smart Pointers

In this 3rd part in (what turns out to be) a series about Custom Managed Records, we take a look at how they can be used to create smart pointers. About Smart Pointers But first we have to get some terminology straight. Smart Pointers is an umbrella term behind different technologies for making it easier… Continue reading Custom Managed Records for Smart Pointers