Curses is a hardware independent C library for writing screen-orientated programs. Allowing the programmer to write an application which will run on anyscreen which the system has term-info for. Curses has been around for ages making it the de-facto standard for writing this type of app.

Ncurses is an GNU re-implementation, for which there is a tutorial in the Linux Programmers Guide.

Along similar lines is S-Lang.