ThinBASIC is a computer language with roots set in BASIC. The original
BASIC did not ask the user to declare any type for the variables
, it simply stored them as a number using 30 bits
Many of the modern computer languages (Lua, Python, Ruby...) try to mimic this design by hiding the internal variable storage details from the programmer. This approach has the clear advantage of keeping things simple. Number is a number, text is a text. Programmer focuses on the problem instead of implementation. So far so good.
The possible controversy of this approach starts to appear once you realize the program needs to run on physical device whose resources are limited. The mentioned approach of variable complexity hiding also poses two issues as well for people who would start with such a language as with their first programming language:
- the correlation between program memory usage and variables is unclear
- performance characteristics can vary surprisingly, as the language switches the backends and performs the memory reallocations
ThinBASIC takes different route.