SmallBASIC
SmallBASIC | ||
---|---|---|
![]() | ||
Desarrollador(es) | ||
Nicholas Christopoulos - Chris Warren-Smith [1] | ||
Información general | ||
Última versión estable | 12.27 (Windows/Linux/Android)[2] | |
Influido por | QBasic | |
Licencia | GPL 3 | |
SmallBASIC es un dialecto del lenguaje de programación BASIC con intérpretes publicado como software libre bajo la Licencia Pública General GNU versión 3 para Microsoft Windows, Linux y Android .
Descripción
[editar]El dialecto es descrito por los autores como un BASIC de segunda generación, y tiene mucho en común con QBasic. SmallBASIC incluye funciones trigonométricas, matriciales y de álgebra, un IDE incorporado, una biblioteca de cadenas, comandos de sistema, sonido y gráficos, junto con una sintaxis de programación estructurada.
Aplicación prevista
[editar]El prefijo «Small» ( pequeño en inglés ) en el nombre SmallBASIC refleja la intención original del proyecto de ser utilizado con la Palm, un pequeño dispositivo portátil. SmallBASIC se diseñó para ser portátil y está escrito en C con módulos independientes que contienen el código exclusivo de cada plataforma. [3]
SmallBASIC está pensado para soportar el mismo tipo de aplicaciones soportadas por GW-BASIC y QBasic en el IBM PC, con soporte para dibujar primitivas gráficas en la pantalla, crear sonidos, manipulación de cadenas, y mostrar texto en varias fuentes. SmallBASIC también añade funciones como «Guardar archivo», «Guardar como», «Cerrar archivo» y «Abrir archivo» a la Palm, un dispositivo sin sistema de archivos nativo. SmallBASIC también está pensado como una herramienta para las matemáticas, con funciones incorporadas para la conversión de unidades, álgebra, matemáticas matriciales, trigonometría, estadística, y para la representación gráfica de ecuaciones en dos y tres dimensiones. [3] [4]
Historia
[editar]SmallBASIC fue creado originalmente por Nicholas Christopoulos en 1999 para ejecutarse en hardware mínimo.[1] Una de las principales plataformas compatibles fue Palm OS,[5] donde la memoria, los ciclos de CPU y el espacio de la pantalla eran limitados. El motor de gráficos SmallBASIC podía utilizar gráficos ASCII (similares al arte ASCII ) y, por lo tanto, ejecutaba muchos programas en dispositivos de texto puro. SmallBASIC funciona incluso en relojes de pulsera Palm OS fabricados por Fossil, Inc. A partir del año 2005 el proyecto ha sido continuado por Chris Warren-Smith.[1]
Plataformas
[editar]SmallBASIC está disponible para todos los sistemas operativos compatibles con POSIX (incluidos Linux, BSD y UNIX ), [6] DOS / DJGPP, [7] Win32, [8] FLTK, [9] VTOS, [9] Franklin eBookMan, [10] Cygwin / MingW, [11] Helio/VT-OS, [12] Android,[13] la tableta de Internet Nokia N770. ,[14] y en cualquier sistema que admita SDL, FLTK, SVGALib, Linux framebuffer o Windows GUI .
Sintaxis
[editar]La sintaxis de SmallBASIC tiene mucho en común con la de QBasic. Los números de línea no son necesarios y las sentencias se terminan con nuevas líneas. Se pueden escribir múltiples sentencias en una sola línea separando cada sentencia con dos puntos (:)
Un ejemplo de programa "¡Hola, mundo!" es:
PRINT "¡Hola Mundo!"
Un ejemplo de cómo SmallBASIC permite cargar un archivo de imagen y mostrar la imagen:
I = IMAGE("image_name.png") 'Carga un archivo en formato PNG
I.SHOW(100,100) 'muestra la imagen en pantalla en la coordenada 100x100
Módulos cargables
[editar]Se pueden escribir módulos externos en C para ampliar la funcionalidad proporcionada por SmallBASIC. [15] Desde la versión 12.20 se incluyen en el lanzamiento módulos para Raylib, Nuklear y WebSockets . [16] Además existe un módulo que permite acceder al conector GPIO de la Raspberry Pi.[17]
Recepción
[editar]- Tech Republic lo llama " una excelente herramienta para comenzar a programar". [18]
- ASCII-World dice " SmallBASIC es una excelente herramienta para las matemáticas " [3]
- David Mertz, Ph.D. y Andrew Blais, Ph.D. de Gnosis Software, afirman que " SmallBASIC tiene una de las mejores interfaces de desarrollo que hemos analizado".
Véase también
[editar]Referencias
[editar]- ↑ a b c «Learn SmallBASIC in Y Minutes». learnxinyminutes.com. Consultado el 26 de junio de 2025.
- ↑ «Browse Files for SmallBASIC» (en inglés). 26 de abril de 2024. Consultado el 23 de mayo de 2024.
- ↑ a b c «About SmallBASIC» (en inglés). ASCII-World. 22 de febrero de 1999. Archivado desde el original el 12 November 2007. Consultado el 19 de enero de 2011.
- ↑ PalmOS Hosted Programming Languages: Using the Palm as a Development Environment (en inglés)
- ↑ Freshmeat.net: Editing text on PalmOS using SmallBASIC. (en inglés)
- ↑ «SourceForge.net Repository - Unix» (en inglés). Smallbasic.svn.sourceforge.net. Consultado el 22 de enero de 2011.
- ↑ «SourceForge.net Repository - DOS-DJGPP» (en inglés). Smallbasic.svn.sourceforge.net. Consultado el 22 de enero de 2011.
- ↑ «SourceForge.net Repository - WIN32» (en inglés). Smallbasic.svn.sourceforge.net. Consultado el 22 de enero de 2011.
- ↑ a b Gordon McComb (2002). Robot builder's sourcebook (en inglés). McGraw-Hill Professional. p. 411. ISBN 0-07-140685-9. Consultado el 19 de enero de 2011. «SmallBASIC.»
- ↑ «SourceForge.net Repository - EBM» (en inglés). Smallbasic.svn.sourceforge.net. Consultado el 22 de enero de 2011.
- ↑ «Sigwin/MinG» (en inglés). Smallbasic.svn.sourceforge.net. Consultado el 22 de enero de 2011.
- ↑ «SourceForge.net Repository - Helio» (en inglés). Smallbasic.svn.sourceforge.net. Consultado el 22 de enero de 2011.
- ↑ «SourceForge.net Repository - Android» (en inglés). Smallbasic.svn.sourceforge.net. Consultado el 22 de enero de 2011.
- ↑ «SmallBASIC - N770 at» (en inglés). Sourceforge.net. Consultado el 22 de enero de 2011.
- ↑ «SmallBASIC plugins». GitHub (en inglés). Consultado el 22 de marzo de 2022.
- ↑ «SmallBASIC Home Page» (en inglés). Consultado el 22 de marzo de 2022.
- ↑ «SmallBASIC PiGPIO Home Page» (en inglés). Consultado el 22 de marzo de 2022.
- ↑ McPherson, James (4 de junio de 2001). «Development in the palm of your hand, part 2». Articles.techrepublic.com.com. Archivado desde el original el 4 de septiembre de 2012. Consultado el 19 de enero de 2011.
Enlaces externos
[editar]SmallBASIC en GitHub.