Barron says Bosque is a “regularized programming model” that moves beyond structured programming. Microsoft says it will give developers more quality control, more productivity, and usher in a new era of developer tooling. “The Bosque programming language is a Microsoft Research project that is investigating language designs for writing code that is simple, obvious, and easy to reason about for both humans and machines. The key design features of the language provide ways to avoid accidental complexity in the development and coding process. The result is improved developer productivity, increased software quality, and enable a range of new compilers and developer tooling experiences.” Bosque aims to achieve this goal by looking to solve five significant areas of code complexity:  ‘Mutable State and Frames’, ‘Loops, Recursion, and Invariants’, ‘Indeterminate Behaviors’, ‘Data Invariant Violations’, and ‘Equality and Aliasing.’

Perhaps the biggest aspect of Bosque is it removed loops of any kind because it handles conditionals differently. Alongside the language, Microsoft debuted “Functors”, a feature that double as a loop in Bosque and can enhance software abilities. In a research paper to accompany the launch, the company explains how Functors differ from loops while providing loops functions.

Familiar System

Developers who already work with TypeScript may see some familiarities when looking at Bosque. That’s because Microsoft has built the new language on derivatives of TypeScript, such as similar syntax and types. You can find out more about Bosque by checking out the accompanying research paper. Alternatively, head to its GitHub page to start testing.

Microsoft Reveals Game Changing Bosque Programming Language - 76Microsoft Reveals Game Changing Bosque Programming Language - 46Microsoft Reveals Game Changing Bosque Programming Language - 98Microsoft Reveals Game Changing Bosque Programming Language - 90Microsoft Reveals Game Changing Bosque Programming Language - 87Microsoft Reveals Game Changing Bosque Programming Language - 71