uBASIC is a tiny, non-interactive BASIC interpreter designed for adding simple scripting capabilities.
The (non-interactive) uBASIC interpreter supports only the most basic BASIC functionality: if/then/else, for/next, let, goto, gosub, print, and mathematical expressions. There is only support for integer variables and the variables can only have single character names.
I have added an API that allows for the program that uses the uBASIC interpreter to get and set BASIC variables, so it might be possible to actually use the uBASIC code for something useful (e.g. a small scripting language for an application that has to be really small).
My intention with this program is to be able to use it for adding a simple scripting language to severely memory-constrained applications or systems (e.g. a scripting language to the web server applications in uIP or Contiki).
While I secretly hope that the uBASIC code may be useful to someone, it currently is a really quick hack made primarily for personal enjoyment. However, if you are interested in looking at how a really small BASIC interpreter can be written, go ahead and take a look at the code!