The Cowgol programming language
Cowgol is an experimental, Ada-inspired language for very small systems (6502, Z80, etc). And yes, it targets 8086, on DOS (it emits small mode .exe files with 64kB of code and 64kB of data). Cowgol has very strong typing (implicit casts of variables never happen) and supports multiple return parameters and nested functions. Cowgol started from a compiler experiment - but despite that, it is meant to be useful, not just a toy. Cowgol is open source, under the BSD 2-Clause "Simplified" License. If you'd like to try it out, you can read more at the Cowlark website, or visit the Cowgol Github.