comp.lang.ada
 help / color / mirror / Atom feed
From: Brad Moore <brad.moore@shaw.ca>
Subject: ANN: Deepend 3.4 Storage Pools
Date: Sun, 07 Sep 2014 19:27:26 -0600
Date: 2014-09-07T19:27:26-06:00	[thread overview]
Message-ID: <yk2Pv.173910$O13.22136@fx17.iad> (raw)

I am pleased to announce the availability of Deepend version 3.4.

Deepend is a suite of dynamic storage pools with subpool capabilities
for Ada 95, Ada 2005, and Ada 2012.
Bounded and unbounded storage pools types are provided.
Storage pools with subpool capabilities allow all objects in a subpool
to be reclaimed all at once, instead of requiring each object to be
individually reclaimed one at a time. Deepend storage pools provides a 
more efficient and safer scheme for storage management than relying on
the standard storage pool, and user calls to Unchecked_Deallocation.
In fact, Deepend can eliminate the need for Unchecked_Deallocations.
A Dynamic Pool may have any number of subpools.

Deepend can be downloaded from;
     https://sourceforge.net/projects/deepend/files/

Differences since last release include;

This is technically the first version of Deepend that compiles for Ada 
2012 and the GNAT GPL 2014 version of the compiler. In particular,

- The Pool parameter of the
   System.Storage_Pools.Subpools.Default_Subpool_For_Pool function was
   finalized to be an in out parameter for the Ada 2012 standard.
   This requires changes to the Deepend pools, since they override this
   function. In addition, the Ada 2005 and Ada 95 versions of Deepend
   also were modified to reflect this change. In Ada 95 and Ada 2005,
   functions cannot have in out parameters, so instead, the parameters
   were changed to be access parameters, so that the Ada 95 and Ada 2005
   version more closely matches the Ada 2012 version.
- In the Ada 2012 version, there were static_predicates defined for
   private declarations, which in fact needed to be dynamic_predicates.
   Since these were private declarations, the predicates were removed,
   since they weren't very useful since they were private declarations,
   and the need for dynamic checks for this was deemed as worthwhile.
- Removed workarounds for GNAT compiler bugs that were fixed in the
   GNAT GPL 2014 version of the compiler. In particular, the storage
   pools have default discriminants which now can be left unspecified
   to use the defaults.

Regards,
    Brad Moore


















                 reply	other threads:[~2014-09-08  1:27 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox