Posts

Released v0.2.0 of the Fractions unit

Image
What I hope is the last v0.x release of my Fractions unit has just been released. If all is well v1.0 should finally be out in May 25, just 12 years after it first appeared. This unit provides an advanced record, TFraction , that encapsulates an immutable fraction and a whole bunch of methods for manipulating them. There are also a lot of operator overloads that make it easy to perform arithmetic and comparisons. You can cast from integers and to and from floating point values. TFraction is well documented online if you want to check out what operations it supports. Finally there are comprehensive DUnit tests for every method and operator. ⮞  Get it here . Here's the properties, methods & operators (with various directives deleted): property Numerator : Int64; property Denominator : Int64; property WholeNumberPart : Int64; property FractionalPart : TFraction; function IsProper : Boolean; function IsWholeNumber : Boolean; function Sign : TValueSign; function CompareTo (const ...

DUSE v0.3.1 released

Image
Following a bug report I've updated DUSE , the Delphi Unit Scope name Expander program, to allow Delphi 12 unit names to be imported easily. That's it really. If you use DUSE and Delphi 12 this is worth the update. 🠞  Get DUSE v0.3.1 from GitHub .

Code Snippet Collection v2.2.3 released

v2.2.3 of the DelphiDabbler Code Snippets Collection has just been released. It includes bug fixes, so you should updated For details see  this post on the CodeSnip blog .

Meany - the average calculator - an update

Image
There may have been a broken link to the releases page on GitHub for the new Meany program. That link should now work - see  https://github.com/ddabapps/meany/releases . The web page is finally up too: https://delphidabbler.com/software/meany .

System Information Unit v5.32.0 released

Image
This is a pretty big update to the System Information Unit : a piece of code I keep promising is on its way out! Following a feature request on GitHub to provide access to the computer's UUID I hopped off down a rabbit hole BIOS related code and documentation. Once I discovered I needed to dig the UUID out of the BIOS I found a hole host of goodies sitting there. So, instead of just adding a UUID method to TPJComputerInfo I ended up adding a whole new class, TPJBiosInfo , that gives access to some the the information stored in the BIOS. Well, providing your BIOS complies with the SMBIOS reference specification v2.0 or later it does. Otherwise the class does sweet FA. Three of the methods of TPJBiosInfo duplicate (sort of) three methods of TPJComputerInfo . I say sort of because the TPJBiosInfo methods get their info directly from the BIOS, while TPJComputerInfo relies on the information being duplicated in the registry. In my case both approaches work, but I've read that the ...

New program: Meany - the average calculator

Image
I've just released v0.1.0 of Meany , a mathematical averages calculator. Why? Well I recently added a bunch of averaging functions to the DelphiDabbler Code Snippets Collection . When trying to find data to test the functions I ended up using average calculators on five or six web pages. Some pages calculated just one type of mean, while another did a collection of different means or modes etc., but no one site did it all. This app lets you use all the new averaging functions in the collection in one place. Here's the UI: Click the button for the function you want. Enter a list of data in the  Values memo control. For a weighted average enter the required weights (one per value). For power means you also need to enter a power. Then click calculate. Data can be entered as whole numbers, decimal numbers or in scientific format. Numbers can be separated by spaces, new lines or a list separator character. You must use the correct decimal point and list separator for your current l...

Code Snippet Collection v2.2.2 released

v2.2.2 of the DelphiDabbler Code Snippets Collection has just been released. This version adds lots of new mathematical function, mainly related to statistics and number bases. For details see this post on the CodeSnip blog .