From e59ca4a3eaa53d66fb2dcd3ddbdd86d99b04b7c8 Mon Sep 17 00:00:00 2001
From: Jed Barber
In 1996 David A. Wheeler wrote a paper +
In 1996 David A. Wheeler wrote a paper that compared Ada, C, C++, and Java against the Steelman. This served to highlight the strengths and weaknesses of those languages, areas that could be improved, and a scant few requirement points that perhaps aren't even applicable anymore. Since then several more programming languages capable of systems work have been created, so it's time for an @@ -37,70 +37,70 @@ update. More datapoints! Hence, this article will conduct a similar comparison,
D was created originally as a reworking of C++ in 2000-2001. It +
D was created originally as a reworking of C++ in 2000-2001. It serves to represent a progression of the C language family, adding features including contracts, optional garbage collection, and a standard threading model.
-Parasail is a research language +
Parasail is a research language created in 2009 by AdaCore, the main vendor of Ada compiler tooling today. The language is designed with implicit -parallelism throughout, simplifying and adding static checking +parallelism throughout, simplifying and adding static checking to eliminate as many sources of errors as possible. It represents a possible future direction for Ada derived languages.
-Pascal, like C, predates +
Pascal, like C, predates the Steelman requirements and so they cannot have had any influence at all on the language. It was designed for formal -specification and teaching algorithms. +specification and teaching algorithms. Later dialects were used to develop several high profile software projects, including Skype, Photoshop, and the original Mac OS. It is useful to consider as a precusor of Ada, sharing many points of functionality and style.
-Rust is the newest language here, created in 2010. It +
Rust is the newest language here, created in 2010. It is an odd mix of C and ML influence, placing more emphasis on the functional paradigm than other systems languages. Its main claim to fame is adding another method of heap memory safety via -affine typing.
+affine typing.- | - |
- | - |
* Pascal does not have an official logo, so a picture of Blaise Pascal, +
* Pascal does not have an official logo, so a picture of Blaise Pascal, in whose honour the language is named, will have to do.
@@ -118,17 +118,17 @@ that, effort has been made to keep the evaluation as similar as practical to theThe defining documents used for each of these languages are as follows: