Development Log in September 2006.

  • GNAT Pro
    Sep 27th, 2006

    New function GNAT.OS_Lib.Current_Time
    A new function GNAT.OS_Lib.Current_Time providing access to the current system time as an OS_Time value is now available.

  • GNAT Pro
    Sep 27th, 2006

    New function GNAT.OS_Lib.Current_Time
    A new function GNAT.OS_Lib.Current_Time providing access to the current system time as an OS_Time value is now available.

  • Ada
    Sep 25th, 2006

    Ada 2005 for High-Integrity Real Time Systems (Video)

    An indepth presentation by AdaCore senior software engineer, Jose F Ruiz, on Ada for embedded high-integrity real-time systems.

    The talk covers:

    • The Ravenscar tasking profile
    • Flexible real-time scheduling algorithms
    • CPU clocks and timers
    • Timing events
    • Flexible object-oriented features

    View the video »

  • GNAT Pro
    Sep 20th, 2006

    Bind_Socket allows binding to a specific address
    GNAT.Sockets.Bind_Socket now honors the Addr parameter, allowing the user to bind to a specific address, instead of the wildcard address (previously it would always bind to the wildcard address, and ignore the Addr component of the Address argument). Note that applications that relied on the previous behaviour should now explicitly use Any_Inet_Addr to bind a socket with an unspecified address (and thus accept connections on all interfaces).

  • Ada
    Sep 18th, 2006

    Internationalization in Ada 2005
    There are three aspects to making a language truly usable internationally.

    First, which almost goes without saying, is that there should be an international standard for the language that has been carefully reviewed by the international community. This is most certainly true of Ada, and specifically the draft standard for Ada 2005 has been approved by a vote of ISO member countries and is well on its way to getting the final stamp of approval. That vote was the critical one, it's all smooth sailing from here and we may even have a formal standard before the end of the year. We were not sure if this would happen in 2006 or 2007 (which is one of the reasons we chose 2005 for the name). Of course once the standard is issued, the name of the language becomes simply Ada, since this name always refers to the current standard. It is notable that Java lacks such a standard, and has as a result been almost entirely a US-driven design.

    Second, you want to be able to write programs that will handle foreign languages in a comprehensive manner. The standardization of international character sets has taken a huge stride forward in the last few years with the approval of the new ISO 10646 standard that is unified with Unicode. This is a 32-bit standard which covers all languages in the world, as well as specialized character sets for such applications as music notation. Smooth integration of this standard is not trivial in a language design. It is certainly not sufficient to just include a 32-bit character type. You need as well full integration of library functions that deal with characters and strings. Given the participation of the international community in the Ada 2005 design, it is no surprise that Ada 2005 accommodates this new standard fully and cleanly. The new types Wide_Wide_Character and Wide_Wide_String are first-class citizens in Ada 2005, and fully supported in the library and the language design. Ada-2005 compilers, notably GNAT Pro, fully support this language feature, and support not only the standard UTF encoding of such characters, but also locally used encodings such as Shift-JIS, which is still used in Japan.

    Third, you would like to be able to write programs with comments and identifiers in non-Roman scripts. A very important part of the Ada design is dedicated to making highly readable source programs. Choosing good identifier names is a critical element of readability, so for non-English speaking programmers, it can be extremely valuable to support a full range of character sets for this purpose. It's not by any means trivial to design such a feature. For example, exactly how should case equivalence be handled in a locale-independent manner? Again, the Ada 2005 design (and GNAT Pro) fully support the use of foreign languages for identifiers and in comments. The implementation of this was by no means a trivial task, but it is now complete in the current versions of GNAT Pro.

    In short, once again Ada leads the way in language design, and fully addresses the difficult issues of smoothly integrating all written languages of the world, allowing for truly international use of Ada.

  • GNAT Pro
    Sep 11th, 2006

    Extended syntax for pragma CPP_Constructor
    The syntax of pragma CPP_Constructor has been extended to allow specification of External_Name Link_Name parameters as in a pragma Import. This avoids the need to include an additional pragma Import to specify the C++ mangled name.

  • GNAT Pro
    Sep 11th, 2006

    Extended syntax for pragma CPP_Constructor
    The syntax of pragma CPP_Constructor has been extended to allow specification of External_Name Link_Name parameters as in a pragma Import. This avoids the need to include an additional pragma Import to specify the C++ mangled name.

  • GNAT Pro | Ada Compiler
    Sep 8th, 2006

    AdaCore extends GNAT Pro 5.04a1 support to Alpha OpenVMS 8.2
    AdaCore is pleased to announce that GNAT Pro 5.04a1 now supports Alpha OpenVMS 8.2. GNAT Pro has been ported to more platforms, both native and embedded, than any other Ada technology. For a full list of supported configurations, please visit our configurations page.

  • GNAT Pro
    Sep 7th, 2006

    More efficient GNAT.Sockets.Selector_Type
    The implementation of selectors (wrappers for the operating system select(2) facility) has been improved to use pipes instead of sockets for internal signalling, on platforms where these are available.

  • GNAT Pro
    Sep 7th, 2006

    More efficient GNAT.Sockets.Selector_Type
    The implementation of selectors (wrappers for the operating system select(2) facility) has been improved to use pipes instead of sockets for internal signalling, on platforms where these are available.

  • GNAT Pro
    Sep 5th, 2006

    New gnatmake switches to control warnings
    Three new switches are added to gnatmake to control warnings while parsing project files: -wn (treat warnings as warnings, the default), -ws (suppress warnings) and -we (treat warnings as errors).

  • GNAT Pro
    Sep 5th, 2006

    New gnatmake switches to control warnings
    Three new switches are added to gnatmake to control warnings while parsing project files: -wn (treat warnings as warnings, the default), -ws (suppress warnings) and -we (treat warnings as errors).

  • GNAT Pro
    Sep 1st, 2006

    SHA-1 Secure Hash Algorithm
    A new GNAT runtime library unit GNAT.SHA1 is provided, which implements the SHA-1 Secure Hash Algorithm, as specified in RFC 3174.

  • GNAT Pro
    Sep 1st, 2006

    SHA-1 Secure Hash Algorithm
    A new GNAT runtime library unit GNAT.SHA1 is provided, which implements the SHA-1 Secure Hash Algorithm, as specified in RFC 3174.