Blogs

Free Pascal bencmark: array vs TList vs dynamic array

Let's make a simple benchmark test for random and sequential access. I will compare:

  • array with predefined size (allocated on stack)
  • TList container class (allocated on heap)
  • dynamic array (allocated on heap)
  • generic TFPGList (allocated on heap)

I use an array of 10M elements having integer and varaint data type. You can easily change its type definition in "type" section if need.

Crack C# namespaces in 30 seconds

The namespaces conception in C# seems exhaustive and insufficient at the same time in comparison with strong module notation like in Oberon-2 and even with modular programming like in Free Pascal/Delphi.

Why insufficient? You cannot declare constants and functions within namespaces but you should add a class with constant field or static method for it. It's really sad...

Why exhaustive? The "using" directive with such introduced classes is the source of unexpected errors. Here is an example below.

Make error "Fatal: Command arguments too long"

This bug is reproduced on Delphi 7 and C++Builder 6 at least (probably in later versions too) when starting Borland make utility. Indeed, the message "Fatal: Command arguments too long" and the real problem are as like as chalk and cheese.

Check the length of your PATH variable. In my case the length was > 400 characters. Deleting some paths reduced the length down to 300-350 characters and solve the problem.

Ubuntu on BIOS RAID (fake RAID)

I seem that "fake RAID" term is not really corresponding to actual motherboard design. Indeed, I don't see the differences between Marvell RAID controller implanted into my motherboard and my old Silicon Image PCI SATA 4-port card.

However, Ubuntu 14.04 cannot be installed "by default" in both cases. Follow these step-by-step instructions.

Pages

Subscribe to RSS - blogs