ZBasic is similar to Visual Basic in that it has modern control structures (If..Then..Else, Do..While, Select Case, etc.) and it has a modern parameterized subroutine/function paradigm. ZBasic also supports modern data types including user-defined types like structures, unions and enumerations. ZBasic also supports an optional object model for those that prefer object-oriented code.
The original ZBasic compiler, released in 2005, compiled application code to p-code for a Virtual Machine running on Atmel AVR controllers. In 2008, the ZBasic compiler was updated to be able to compile ZBasic applications to native code for the Atmel AVR. The latest release can compile a ZBasic application to native code for the ESP8266.
Although the ZBasic compiler and IDE are Windows applications, some of our customers run them under the Wine emulator on Linux.