2.5 LANGUAGE ============ DISCLAIMER: this file must be updated and adapted to this project. I. Organized Codebase --------------------- The program is primarily written in C, and is dispersed into a variety of optional modules; therefore, the inclusion of other languages, dialects, and platform-dependent components are permitted. This project's core and a number of its direct dependencies conform to ISO 9899:1990, which is generally referred to as Standard C90, and is functionally identical to ANSI X3.159-1989 "Programming Language C", which is Standard C89/ANSI-C. This ensures compatibilty between the basic functionality of the application and legacy/"retro" platforms, which support is planned for. In the project's core, dialect-dependent features should be omitted, unless they are included within a preprocessor-directive that optionalizes their implmentation and separates their influence from the vital structure of the program. Other languages and C-dialects can be used, but they must conform to the modular nature and goals of the program. By default, all extraneous and non-vital components should be disabled; compiler-flags and build-options will be the primary means of enabling them. II. Styling ----------- The source-code in this project is formatted to the "Allman" style of indentation; see the provided example below: while (x == y) { function(); function_2(); } Note that braces align with the control statement, and statements placed within the braces are indented. Allman-style indentation maximizes the readability of the program and, via a clear, block-like structure, reduces the probabilty of ambiguous formatting. Each source file must have a comment at the bottom marking the end of its content e.g. /* --- end of FILE_C --- */ The period located before the extension is shown as an underscore, and the name is now capitalized, whereas the real filename is snake_case. --- end of 2.5 LANGUAGE ---