BASIC-256 es una sencilla versión de BASIC diseñada para enseñar a programar a niños utilizando las estructuras de control clásicas como gosub, for/next y goto, e incluyetambién un modo gráfico. Antes de noviembre de 2006 este programa se llamaba KidBASIC.
El proyecto BASIC-256 (anteriormente KidBASIC) ha cambiado su nombre para evitar cualquier posible conflicto / la confusión con otro proyecto con el mismo nombre.
Introducción
BASIC-256 es una herramienta fácil de usar la versión de BASIC diseñado para enseñar a los niños los fundamentos de la programación de computadoras. Utiliza las estructuras de control tradicionales como GOSUB, para / siguiente, y Goto, que ayuda a los niños a ver fácilmente cómo funciona el control de flujo del programa. Tiene un modo de gráficos integrados que les permite hacer dibujos en la pantalla en cuestión de minutos, y un conjunto de detalladas y fáciles de seguir tutoriales que introducen conceptos de programación a través de ejercicios divertidos.
Requisitos del sistema
De Windows (95,98, NT, 2000, XP): • 48MB RAM
• Espacio en disco duro 15 MB
• QT bibliotecas de desarrollo 4.0 (si la compilación)
• MinGW, GNU Flex y Bison (si compiladora)
Unix / Linux / FreeBSD: • 48MB RAM
• Espacio en disco duro 15 MB
• QT bibliotecas de desarrollo 4.0 (si la compilación)
• GNU Flex y Bison (si compiladora
el código fuente de BASIC-256 es de libre acceso, por lo que cualquiera puede modificarlo. Está escrito utilizando LEX, YACC y QT (en C + +), por lo que los programadores familiarizados con cualquiera de los se sentirán como en casa.
Visión General
Los programas BASIC-256 se compilan inicialmente en bytecodes usando LEX y YACC, y posteriormente se ejecutan interpretando el bytecode en una stack machine. Para añadir funciones basta con añadir un bytecode, indicando a LEX y YACC cómo analizar la sintaxis y codificando la instrucción apropiada en el intérprete. Para quien nunca haya escrito un compilador o intérprete, las entrañas de BASIC-256 pueden ofrecer una excelente introducción a los fundamentos de este tipo de programación.
Es importante tener presente que BASIC-256 es un lenguaje de enseñanza para niños ( entre 7 y 9 años), por lo que se pretende evitar conceptos avanzados tanto como sea posible. Aunque sería divertido hacer de BASIC-256 un lenguaje de alto nivel potente, existen ya lenguajes mucho más adecuados para ello: Python, Scheme.
Pendiente de desarrollo
- Control de errores en tiempo real en el editor ( análisis inmediato de cada linea que es escrita).
Ahí es donde entra en juego BASIC Es lo más cercano al hardware que se puede llegar y lo siguen haciendo cosas divertidas. Es el lenguaje de bajo nivel de más alto nivel que hay.
La vida de un programa BASIC-256
- El programa BASIC es convertido en símbolos o tokens por LEX
- LEX proporciona los tokens a YAC
- YACC determina si la linea tiene una sintaxis válida. Si es así, añade los bytecodes adecuados al programa de bytecodes.
- Si no se produce ningún error de sintaxis, la parte escrita en C++ del programa interpreta el bytecode, de instrucción en instrucción, usando una stack machine
Los errores en tiempo de ejecución detienen el programa y muestran un mensaje de error en la pantalla
Salida Gráfica
Todas las funciones gráficas se llevan a cabo en un buffer, el cual es trasladado inmediatamente a la pantalla después de cada operación. Esto es intencionalmente ineficiente. El modo “rápido” de hacerlo sería tener un hilo separado para el renderizado que llamase a una rutina de volcado en pantalla cuando estuviese listo, o hacer todo el renderizado en la rutina de pantalla
Todas las funciones gráficas se llevan a cabo en un buffer, el cual es trasladado inmediatamente a la pantalla después de cada operación. Esto es intencionalmente ineficiente. El modo “rápido” de hacerlo sería tener un hilo separado para el renderizado que llamase a una rutina de volcado en pantalla cuando estuviese listo, o hacer todo el renderizado en la rutina de pantalla.
Esta es una ilustración de las concesiones hechas en BASIC-256 para mantener las cosas simples. Nos interesa que los niños sean capaces de ver los puntos moverse por la pantalla sin tener que explicar que son el doble buffering o el multi-hilo. También queremos que puedan escribir juegos como Pong, que analizan colisiones usando fórmulas geométricas básicas, y dibujen la pelota y las palas con un simple bucle. El presente enfoque permite hacer esto.
Nota: Para acelerar las cosas para niños que hacen programas más avanzados, se ha añadido el modo FASTGRAPHICS. Cuando se utiliza ester modo, la pantalla se actualiza solamente cuando el programa BASIC usa la instrucción REFRESH . Esto permite a los niños beneficiarse del doble buffering sin tener que entenderlo completamente.
Aquí mostraremos un video tutorial :D
..........................................................................................................................................................................................................................................................................
Formulario
Versión | Función |
---|---|
Real Functions and Subroutines - Version 0.9.9.1 | he estado trabajando en la adición de funciones "reales" y subrutinas durante varias semanas. Me he comprometido a SVN y actualizados los archivos de instalación a la versión 0.9.9.1 y la necesidad de algunas personas para ayudar a probarlo. Documentación va a venir, pero hay un par de nuevos programas en los ejemplos que muestran cómo las funciones y subrutinas trabajo. |
0.9.6.66 | Construido nuevo instalador de Windows. Esta versión incluye algunas correcciones de errores menores y la (nl) traducción en holandés de la interfaz y la documentación.Construido nuevo instalador de Windows. Esta versión incluye algunas correcciones de errores menores y la (nl) traducción en holandés de la interfaz y la documentación. Construido nuevo instalador de Windows y LINUX / MAC TAR archivo. Esta versión incluye las nuevas sentencias de control de la interfaz de usuario y correcciones a la visualización ayuda fuera de línea. |
0.9.6.61 | Subido el último instalador SVN y Windows de Sourceforge. Incluye nuevas funciones OSTYPE (qué tipo de sistema es este) y mseg (tiempo de ejecución vuelta en milisegundos).Ayuda fuera de línea ahora genera a partir de la wiki en http://doc.basic256.org. El programa de instalación de Windows es más pequeño y permite que la ayuda y los ejemplos fuera de línea para ser instalados opcionalmente. |
0.9.6.56 | Subido el último instalador SVN y Windows de Sourceforge. Incluye nuevas funciones DIR, COUNT, COUNTX, INSTRX, REPLACE, ReemplazarX, EXPLOTAR y EXPLODEX. Estas funciones permiten una mejor búsqueda de cadenas y la manipulación, incluso el uso de expresiones regulares. También se incluye la función de ayuda en línea o fuera de línea de Sergei |
0.9.6.56 | Subido el último instalador SVN y Windows de Sourceforge. Incluye nuevas funciones DIR, COUNT, COUNTX, INSTRX, REPLACE, ReemplazarX, EXPLOTAR y EXPLODEX. Estas funciones permiten una mejor búsqueda de cadenas y la manipulación, incluso el uso de expresiones regulares. También se incluye la función de ayuda en línea o fuera de línea de Sergei |
0.9.6.50 | Subido el último instalador SVN y Windows de Sourceforge. Incluye nuevos iconos en menús / barras de herramientas y algunas correcciones menores por Sergey. |
Mi conclusión es que este software al principio creí que era muy difícil, pero una ves descargado el software pude notar que era muy sencilla su estructura y su funcionamiento también es muy útil sobretodo para los niños, ya que esto es base para seguir programando y es muy fácil de utilizar y también de instalar.
a mi en lo personal me encantó y lo recomiendo ampliamente.
•http://www.basic256.org/index_en
•http://en.wikipedia.org/wiki/Basic-256