Linked by Thom Holwerda on Thu 12th Mar 2009 00:45 UTC, submitted by pablo_marx
Sun Solaris, OpenSolaris Ever wanted a simple, compact, small, yet usable and relatively full-featured operating system using a SunOS kernel with most of its utilities written in Ada? Whatever the answer, now you can. "AuroraUX is a SunOS-derived kernel and userland. The core of the project are its utilities written in Ada. Other, poorly implemented features have been fixed or rewritten, too. Ada was chosen over other languages because it sucks the least." At least they're honest.
Permalink for comment 352738
To read all comments associated with this story, please click here.
who sucks!?
by 2501 on Thu 12th Mar 2009 01:38 UTC
2501
Member since:
2005-07-14

I am sorry but I have to differ here. They guy that broke the Colossus last year used Netbsd + Ada and his job was very impressive to my opinion. This is what he said from: http://www.netbsd.org/gallery/schueth-interview.html

What is special about the Ada programming language? How important was the use of Ada to win the challenge, or does the programming language not really matter?

One year back I would have written the software in C, simply because I did not really know Ada at that time. But writing the software in Ada made the whole project much more enjoyable.

To tell you the truth, my prejudice had been for a long time that Ada looks just like Pascal, and Pascal had been obsoleted by C. You also have to type less when writing a program in C (just curly braces instead of "begin" and "end"). In hindsight, I have to say that I was quite stupid, and this even though I was always open to learn new programming languages and have looked at a lot of them.

Ada avoids programming errors by its strong typing model, so you spend less time on debugging your programs. The high level data abstraction allows a more intuitive implementation of algorithms. Modeling the SZ42 in Ada by creating data types for the key wheels and combining them to a data type for the entire machine felt a bit like building a machine piece by piece.

I can only encourage everyone to have a look at Ada. It is a modern programming language with all the features of object oriented languages, like high level abstraction, information hiding, generic programming (similar to C++ templates), and function / operator overloading. Personally I do not have much use for inheritance and run-time polymorphism, but Ada has that too, with concepts that seem more logical to me than those of C++ or Java.

Another interesting feature of Ada is that the language has support for tasking, and that it provides protected types for the safe handling of shared data. On modern multiprocessor systems, you can use the full computing power in number crunching applications by performing calculations in parallel. If the run time system provided by the compiler (usually based on POSIX threads) is designed accordingly, you should be able to do parallel processing on several CPUs just by using the standard language features of Ada. I have not yet tried this, though.

--

Ada language is awesome. It depends how you use it.

-2501