Actually, GCC's Ada compiler (GNAT) is written almost entirely in Ada. I think it was originally bootstraped in the early 1990s using a different Ada compiler.
I use GPS available in the GNAT GPL packages at http://libre.adacore.com/libre/.
It supports Ada, C, C++, Python, SPARK, etc.
Its probably the best free IDE for Ada and SPARK, especially for use on large projects.
Trackback comes with Understand for Ada and seems to be separately downloadable for free from http://www.scitools.com/products/trackback/.
I had Meridian Ada long ago but don't remember much about the IDE. Some editors can do multiple undos back through previous editing sessions.
What kind of Ada libraries are you looking for? There are lots of open source Ada projects on Sourceforge or on various personal developer web sites. The licenses vary, not all are GPL. Search comp.lang.ada archives or look at the links from http://www.adaic.org/links/libs.html.
Yes, I use the formal methods based SPARK tools (www.sparkada.com) for Ada software. In my experience, the Examiner (static analyzer) is always right (> 99.44% of the time) when it reports a problem or potential for runtime exception. Even without SPARK, the Ada language requires that the compiler itself accomplish quite a bit of static analysis. Using Ada, its less likely you will need third-party static analysis tool - just use a good compiler like GNAT.
Yes, there are currently two Eclipse plug-ins for Ada: Hibachi (http://www.eclipse.org/hibachi/), based on the Aonix ADT and GPL'd GNATbench (https://libre.adacore.com/) from AdaCore. GNATbench is better if you are using the GNAT compiler.
Your comment indicates that you don't really know how to use Ada. I use Ada to write what are basically device drivers for complex ASICs. I would argue that Ada is the very best choice for low-level hardware interfacing because it supports precise specification of data layout (size, endianness, record bitfields, etc.) Done right, all of this is a compile time activity without any runtime penality. Ada is also a good language for writing simulations of hardware.
You certainly don't have to (and shouldn't) create new & different types for everything. Types (should) arise from thoughtful design.
I think Ada is a language that everyone would benefit from learning. Its very useful. I have used it for years in my day job, by choice. Ada is probably the most well designed (carefully considered) general purpose language. It can and has been used for everything from GUIs and web servers to games, compilers, flight control systems, low level device drivers and everything in between. It is particularly well suited for low level hardware interfaces and for programming multi-processor systems, real-time or not, and for interfacing with other languages (C, C++, Java, Fortran). The best Ada compiler GPL licensed open-source and is freely available at https://libre.adacore.com/. It supports the latest Ada 2005 language standard. Other information is available at http://www.adaic.org/
Ada has long suffered from a lot of undeserved bad press. Don't believe it. Learn Ada - you probably won't look back.
Actually, GCC's Ada compiler (GNAT) is written almost entirely in Ada. I think it was originally bootstraped in the early 1990s using a different Ada compiler.
I use GPS available in the GNAT GPL packages at http://libre.adacore.com/libre/. It supports Ada, C, C++, Python, SPARK, etc. Its probably the best free IDE for Ada and SPARK, especially for use on large projects.
For Ada, I like WikiBooks: http://en.wikibooks.org/wiki/Ada
Also useful
http://www.adaic.org/
http://www.sigada.org/
http://www.adacore.com/
http://www.sparkada.com/
https://libre.adacore.com/ (free GPL'd Ada 2005 compiler)
Trackback comes with Understand for Ada and seems to be separately downloadable for free from http://www.scitools.com/products/trackback/. I had Meridian Ada long ago but don't remember much about the IDE. Some editors can do multiple undos back through previous editing sessions.
What kind of Ada libraries are you looking for? There are lots of open source Ada projects on Sourceforge or on various personal developer web sites. The licenses vary, not all are GPL. Search comp.lang.ada archives or look at the links from http://www.adaic.org/links/libs.html.
Yes, I use the formal methods based SPARK tools (www.sparkada.com) for Ada software. In my experience, the Examiner (static analyzer) is always right (> 99.44% of the time) when it reports a problem or potential for runtime exception. Even without SPARK, the Ada language requires that the compiler itself accomplish quite a bit of static analysis. Using Ada, its less likely you will need third-party static analysis tool - just use a good compiler like GNAT.
Yes, there are currently two Eclipse plug-ins for Ada: Hibachi (http://www.eclipse.org/hibachi/), based on the Aonix ADT and GPL'd GNATbench (https://libre.adacore.com/) from AdaCore. GNATbench is better if you are using the GNAT compiler.
Your comment indicates that you don't really know how to use Ada. I use Ada to write what are basically device drivers for complex ASICs. I would argue that Ada is the very best choice for low-level hardware interfacing because it supports precise specification of data layout (size, endianness, record bitfields, etc.) Done right, all of this is a compile time activity without any runtime penality. Ada is also a good language for writing simulations of hardware.
You certainly don't have to (and shouldn't) create new & different types for everything. Types (should) arise from thoughtful design.
I think Ada is a language that everyone would benefit from learning. Its very useful. I have used it for years in my day job, by choice. Ada is probably the most well designed (carefully considered) general purpose language. It can and has been used for everything from GUIs and web servers to games, compilers, flight control systems, low level device drivers and everything in between. It is particularly well suited for low level hardware interfaces and for programming multi-processor systems, real-time or not, and for interfacing with other languages (C, C++, Java, Fortran). The best Ada compiler GPL licensed open-source and is freely available at https://libre.adacore.com/. It supports the latest Ada 2005 language standard. Other information is available at http://www.adaic.org/ Ada has long suffered from a lot of undeserved bad press. Don't believe it. Learn Ada - you probably won't look back.