On Thu, Oct 14, 2010 at 5:30 AM, Justin Johansson <[email protected]> wrote: > Touted often around here is the term "systems language". > > May we please discuss a definition to be agreed upon > for the usage this term (at least in this community) and > also have some agreed upon examples of PLs that might also > be members of the "set of systems languages".
A fun question without a precise answer -- like the "i know it when I see it" definition of obscenity. IMO, a systems language has two key characteristics: 1) A systems language expresses software that does not overlay software written in another language. "Overlay" includes running over interpreters and/or kernels. 2) A systems language allows machine independent concepts to be expressed in the language. This means I can't call my flimsy language a systems language by falling back on assembly to fill conceptual gaps that recur on every platform. It also rules out assembly itself as a systems language. When a concept is machine dependent, e.g. "read the x86 time stamp counter register", then assembly is perfectly permissible. Some on this list have opined that D is not aiming at operating system software, so maybe D is an "aspiring" systems language for the time being. Regards, -steve
