General concept
The idea is to write a Tiny BASIC that can be vaguely useful for the ATmega328, i.e, the Arduino Uno or Nano.
The chip has 2K RAM, and is the entry-level Arduino platform micro-controller. Given these constraints, and my lack of training in any C, I am opting to code the project in AVR assembly.
Looking across the different electronic shopping sites, there are certainly cheaper and more powerful boards than the Uno or Nano. But I am still going to do this project anyway.
The language
The Tiny BASIC language set will be small:
PRINT
IF
THEN
GOTO
INPUT
LET
GOSUB
RETURN
CLEAR
LIST
RUN
END
It is derived from the People’s Computer Company 1975 September gazette. I should really put the link to that here. I think such a small BASIC makes this a project able to be done in a few evening/afternoons of serious effort.
Resources
You may be interested to see what I have already dug up:
http://www.ittybittycomputers.com/IttyBitty/TinyBasic/TinyBasic.asm
http://www.ittybittycomputers.com/IttyBitty/TinyBasic/TB_6800.asm
https://github.com/trevorjay/atinybasic (Written in C, full implementation of the People’s Computer Company spec)
https://github.com/CorshamTech/6502-Tiny-BASIC/