Language Group Research Project ADA - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

Language Group Research Project ADA

Description:

The GNADE (GNat Ada Database Environment) project is an open source project with ... GNAT Programming Studio PRO -$183-$400. GNAT Programming Studio Academic ... – PowerPoint PPT presentation

Number of Views:42
Avg rating:3.0/5.0
Slides: 15
Provided by: seetharama
Category:

less

Transcript and Presenter's Notes

Title: Language Group Research Project ADA


1
Language Group Research ProjectADA
  • Seetharaman Sankaran
  • 000099181

2
Introduction
  • Ada was named after Ada Lovelace, who is often
    credited with being the first computer
    programmer.
  • Ada is a structured, statically typed,
    imperative, and object-oriented high-level
    computer programming language.
  • Designed by a team led by Jean Ichbiah of CII
    Honeywell Bull under contract to the United
    States Department of Defense during 19771983 to
    supersede the hundreds of programming languages
    then used by the DOD.

3
Introduction
  • Ada is strongly typed (even for integer-range),
    and compilers are validated for reliability in
    mission-critical applications, such as avionics
    software.
  • Ada was originally targeted at embedded and
    real-time systems. Examples of systems where Ada
    is used include avionics, weapons (including
    thermonuclear weapons), and spacecraft.

4
Inheritance
  • Earlier in Ada 83 Support for Inheritance was
    through the use of generic packages and by the
    implementation of variant records.
  • Ada 95 uses tagged types to support inheritance
    and allows the developer to derive child packages
    directly from the parent, with or without an
    extension of the structure and the methods of the
    parent.
  • Does not support multiple inheritance.
  • Ada 95 provides polymorphism through the use of
    class-wide types and type extensions, which can
    contextually recognize the appropriate operation
    to perform.

5
Component Reuse
  • Component reusability is achieved through
  • genericity and package implementation.

6
Information Hiding
  • ADA uses a structuring unit known as a package to
    encourage encapsulation and information hiding. A
    package consisted of two parts
  • the specification, describing the functions of
    the particular package
  • the implementation, specifying the underlying
    operations of that package and the persistent
    data associated with the package.
  • The two elements could be separated, and even
    compiled separately, allowing for information
    hiding in data abstraction.
  • Information within a package marked as "private"
    would be inaccessible to any code outside the
    package implementation, which allows for
    increased enforcement of data security.
  • Genericity was even supported by ADA through the
    generic keyword. In total, ADA supported
    desirable data abstraction principles that
    allowed for extensibility and easier code
    maintenance and reuse, without sacrificing
    security or reliability

7
Message Binding
  • Ada 83 Supports static or early binding.
  • All references had to be resolved at compile
    time to create an executable.
  • Ada 95 Supports dynamic or late binding.
  • Allows the developer to create applications
    that resolve messaging references during
    execution based on the actual instance of the
    object involved.

8
Database Support
  • The GNADE (GNat Ada Database Environment) project
    is an open source project with the primary goal
    to provide all tools and packages necessary to
    create an Ada 95 development environment
    providing a seamless integration of relational
    databases and other database products with Ada
    95.
  • The project provides the following software
    packages
  • Thin bindings to different RDBMS products like
    Oracle, PostgreSQL, MySQL using ODBC.
  • Embedded SQL.
  • Native bindings to other RDBMS approaches such as
    sqlite
  • http//gnade.sourceforge.net/

9
Web Development
  • AWS stands for Ada Web Server
  • AWS is a complete framework to develop Web based
    applications. The main part of the framework is
    the embedded Web server. This small yet powerful
    Web server can be embedded into your application
    so your application will be able to talk with a
    standard Web browser like Microsoft Internet
    Explorer or Netscape Communicator for example.
    Around this Web server a lot of services have
    been developed.

10
Web Development
  • The framework includes
  • A Web parameters module. This module takes care
    of retrieving the forms or URL parameters and to
    build an associative table for easy access.
  • A session server, this is a very important module
    to be able to keep client's data from page to
    page.
  • Support SOAP to develop Web Services.
  • A tool (based on ASIS) to generate a WSDL
    document from an Ada spec.
  • A tool to generate Web Services stubs/skeletons
    from a WSDL document.
  • A template parser, this module makes it possible
    to completely separate the Web design from the
    code. No more scripting into your Web page. This
    template engine is amazingly fast due to its
    concurrent cached compiled templates support.
  • An Ajax runtime based on templates hiding
    JavaScript.
  • Support for Secure Sockets (HTTPS/SSL), this is
    based on OpenSSL library.
  • Support for large servers using dispatchers based
    on URI, request methods, timers.
  • Support for virtual hosting (dispatchers based on
    the host name).
  • Support for server push.
  • A directory browser ready to be used in any
    application.
  • A status page to get many information about the
    current AWS server.
  • A log module. Log files keep information about
    all resources requested to the server.
  • Hot plug modules which can be loaded/unloaded
    dynamically to add specific features to a server.
  • A light communication API to exchange data
    between applications using the HTTP protocol.
  • A configuration API to tune/change the server
    parameters without recompilation.
  • A client API to retrieve any Web page from a Web
    site.

11
Pros and Cons
  • Pros
  • strong typing, modularity mechanisms (packages),
    run-time checking, parallel processing (tasks),
    exception handling, and generics. Ada 95 added
    support for object-oriented programming,
    including dynamic dispatch.
  • Ada also supports a large number of compile-time
    checks to help avoid bugs that would not be
    detectable until run-time in some other languages
    or would require explicit checks to be added to
    the source code.
  • Cons
  • Not much support for windows operating system
  • No support for multiple inheritance

12
Screenshot
13
GNAT Programming Studio (GPS)
14
COST
  • Ada Complier is free but the cost for development
    environment depends upon the vendor.
  • GNAT Programming Studio PRO -183-400
  • GNAT Programming Studio Academic edition is free
    after registration
Write a Comment
User Comments (0)
About PowerShow.com