Vimclair BASIC
Descripción del contenido de la página
Un preprocesador de Sinclair BASIC escrito en VimL
Etiquetas:
Vimclair BASIC es dos cosas:
- Una versión mejorada de Sinclair BASIC.
- Un programa, escrito en VimL, el lenguaje de programación de Vim, que traduce de Vimclair BASIC a Sinclair BASiC, creando un fichero TAP listo para ser cargado en un emulador.
Vimclair BASIC ofrece varias funcionalidades que hacen el desarrollo más fácil que en Sinclair BASIC, tal como se documenta en el código:
" Vimclair BASIC offers the following advantages over Sinclair BASIC:
"
" - C-style block and line comments.
" - Bash-style line comments.
" - Labels instead of line numbers.
" - #vim directive to execute any Vim command in the source.
" - Long variable names for strings, arrays and FOR loops (using the #vim
" directive).
" - Control structures (can be nested):
" - DO ... LOOP
" - DO ... LOOP UNTIL
" - DO ... LOOP WHILE
" - DO UNTIL... LOOP
" - DO UNTIL ... LOOP UNTIL
" - DO UNTIL ... LOOP WHILE
" - DO WHILE ... LOOP
" - DO WHILE ... LOOP UNTIL
" - DO WHILE ... LOOP WHILE
" - EXIT DO
" - EXIT FOR
" - IF ... THEN ... ENDIF
" - IF ... THEN ... ELSE ... ENDIF
" - IF ... THEN ... ELSE IF ... ELSE ... ENDIF
" (with any number of ELSE IF)
" - Procedures (without parameters):
" - DEF PROC, END PROC, EXIT PROC, CALL.
" (Procedures with parameters can be simulated ad hoc with the #vim directive.)
" - The CALL command can be changed with '#procedureCall', e.g.:
" #procedureCall proc
" Or even make it empty:
" #procedureCall
El código en Vimclair BASIC tiene un aspecto similar al código en MBim. De hecho mi objetivo es disponer en ZX Spectrum de algunas de las ventajas de MasterBASIC.
Vimclair BASIC está aún en desarrollo, pero funciona muy bien. De forma paralela estoy desarrollando CE4, un juego de aventuras de texto para probar y mejorar el preprocesador.