TEAM-ADA Archives

Team Ada: Ada Programming Language Advocacy

TEAM-ADA@LISTSERV.ACM.ORG

Options: Use Forum View

Use Proportional Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
gilbert prine <[log in to unmask]>
Reply To:
gilbert prine <[log in to unmask]>
Date:
Sat, 20 Feb 1999 22:26:09 -0500
Content-Type:
text/plain
Parts/Attachments:
text/plain (29 lines)
>Is there a Ada-specific method to add persistant data capabilities
>to an application?

A direct_io package can be instantiated for any object type statement.
Object instances can then be stored in a file_type of the resulting
direct_io package.  The combination of the file name and index (record
number) of the stored object provides a unique object ID for direct access
of these persistant data objects.

I use this approach with external index/pointer files (with their own
direct_io packages) as a data cube/network data model for an in-house data
mining engine.  One interesting Ada-specific feature is that an Ascii file
with fixed length fields and records (e.g. data that might be loaded into a
relational data base table) from legacy data is a ready made direct_io file
if a two character CR_LF field is added to the direct_io data definition.

For what it is worth, this approach provides a blazingly fast specialized
database manager that, with an application specific index/pointer
architecture and data navigation, works at file processing speeds rather
than relational database speeds.  Also, a data architecture using protected
types at run-time can provide Ada-specific multi-user capabilities.

Ada is an amazingly useful language for persistant data/database
development, but it seems that very few people make use of it.  With very
few additional features, Ada 200X could provide an effective built-in
database engine and persistant data capability.

Gil Prine

ATOM RSS1 RSS2