10

I've been browsing the DeHL repository on GoogleCode, and it looks really good to me.

  • Many interesting features that make basic programming tasks easier; Some neat things that are in the DotNet FCL, but are missing from the Delphi RTL can be found in this library;

  • Coded in a modern way, making good use of new language features;

  • Each class, record type, member function and parameter is documented in such a way that it'll show in the code completion of the Delphi IDE;

  • Well-organized and clean code;

  • Plenty of unit tests;

  • Open source and Free;

Basically, it looks like this library should've been included with Delphi, as part of the RTL.

One major drawback: The project has been discontinued. :-(

Now my question is:
Would it be safe to rely on this library for future projects, and use it as a base framework to build upon?

Basically I'd like to hear from somebody who's actually used this library whether or not it's worth it to invest time in getting to know this library, and why.

Wouter van Nifterick
  • 23,603
  • 7
  • 78
  • 122
  • 1
    It does look good. Shouldn't it be part of Jedi? – Johan May 28 '12 at 19:24
  • 4
    Depending on the features you need from DeHL I would suggest you take a look at Spring4D and/or DSharp. Another option would be the Collections subset from DeHL (the most used feature from DeHL afaik) but I think Alex stated he will not continue development on that one aswell until some problems with generics (like the binary size) are solved. – Stefan Glienke May 28 '12 at 19:31
  • 2
    I would never use any discontinued framework for commercial project. What if you upgrade to some future version of Delphi and it won't compile? – Adam May 28 '12 at 19:37
  • 1
    We used it for a while, until I ran into issues with a generics bug in the D2010 compiler. Apparently Alex couldn't get around the problem without a fix to the Delphi compiler. So I removed all usages of it. See http://code.google.com/p/delphilhlplib/issues/detail?id=16&can=1 – awmross May 28 '12 at 23:53
  • New link, https://github.com/pavkam/DeHL – LU RD Jun 20 '14 at 14:11

1 Answers1

11

IIRC the project was discontinued because it was an over-engineered first attempt and a lot of its features turned out really messy and bloated. You should look at Alex Ciobanu's second attempt, which is simply called Collections. It contains most of the interesting features from DeHL, but leaner.

Be careful, though. It still makes heavy use of generics, which will make your binary size really big if you use it a lot, because the compiler team hasn't implemented a way to collapse duplicate code yet.

Mason Wheeler
  • 82,511
  • 50
  • 270
  • 477
  • 2
    I personally don't need collection types other than the ones that come in Delphi. I do sometimes use a dictionary (non-generic) that is from the ancient Turbo Pascal data structures library by Julian Bucknall. I was impressed by DeHL but never kept it as part of any of my real production apps. I agree with Mason's assesment. +1. – Warren P May 29 '12 at 01:02