list the features of C-moss
Answers
The C programming language is a foundational technology for modern computing with millions of lines of code implementing everything from hobby projects to commercial operating systems. This installation base and the programmers producing it represent a massive software engineering investment spanning decades and likely to continue for decades more. Nevertheless, C, which was first standardized almost 30 years ago, lacks many features that make programming in more modern languages safer and more productive. The goal of the C urn:x-wiley:spe:media:spe2624:spe2624-math-0004 project (pronounced “C for all”) is to create an extension of C that provides modern safety and productivity features while still ensuring strong backward compatibility with C and its programmers. Prior projects have attempted similar goals but failed to honor the C programming style; for instance, adding object‐oriented or functional programming with garbage collection is a nonstarter for many C developers. Specifically, C urn:x-wiley:spe:media:spe2624:spe2624-math-0005 is designed to have an orthogonal feature set based closely on the C programming paradigm, so that C urn:x-wiley:spe:media:spe2624:spe2624-math-0006 features can be added incrementally to existing C code bases, and C programmers can learn C urn:x-wiley:spe:media:spe2624:spe2624-math-0007 extensions on an as‐needed basis, preserving investment in existing code and programmers. This paper presents a quick tour of C urn:x-wiley:spe:media:spe2624:spe2624-math-0008 features, showing how their design avoids shortcomings of similar features in C and other C‐like languages. Experimental results are presented to validate several of the new features.