Articulo de referencia

Basic4GL

Basic4GL ( B4GL ; del inglés Basic for openGL ) es una versión interpretada y de código abierto del lenguaje de programación BASIC que ofrece soporte para gráficos 3D mediante O...

Basic4GL ( B4GL ; del inglés Basic for openGL ) es una versión interpretada y de código abierto del lenguaje de programación BASIC que ofrece soporte para gráficos 3D mediante OpenGL . Si bien es interpretado, también puede compilar programas sobre la máquina virtual para generar programas ejecutables independientes .

Utiliza una sintaxis similar a los dialectos tradicionales de BASIC e incluye un IDE y un depurador muy completo y exhaustivo .

Basic4GL no está diseñado para competir con lenguajes de programación como C++ ; su objetivo era reemplazar lenguajes más antiguos como QBasic o GFA BASIC .

Basic4GL incluye los comandos habituales que cabría esperar encontrar en una versión de BASIC, como por ejemplo...

También incluye algunas características con las que los programadores de C estarán familiarizados, como la compatibilidad con punteros , estructuras y, lo que es más importante, toda la API de OpenGL v1.1 .

Historia

Tom Mulgrew creó Basic4GL con el deseo de poder ejecutar funciones de OpenGL de forma fácil y rápida, [ 1 ] sin toda la configuración que normalmente se requiere en un lenguaje como C++ y con mayor estabilidad. Creó una máquina virtual similar a la que usaba en su lugar de trabajo. Comenzó de forma sencilla, con pocas funciones de OpenGL y una funcionalidad mínima. La primera versión fue relativamente popular. [ 1 ]

La primera versión se denominó GLBasic , [ 1 ] que también resulta ser un lenguaje de programación comercial. El problema se resolvió amistosamente y el proyecto de Mulgrew pasó a llamarse Basic4GL.

Mulgrew se propuso como objetivo expandir Basic4GL hasta el punto en que pudiera cargar y mostrar un modelo MD2 . [ 1 ]

Versiones

2.3.0 - Se agregó capacidad de red [ 2 ]

2.3.5 - Soporte para la compilación de código en tiempo de ejecución [ 3 ]

2.4.2 - Se cambió el sistema de sonido de OpenAL a Audiere [ 4 ]

2.4.3 - Se agregó compatibilidad con DLL de complementos [ 5 ]

2.5.0 - Se agregó soporte para funciones [ 6 ]

2.5.8 - Compatibilidad con números hexadecimales [ 7 ]

Versiones

Basic4GL fue diseñado para ejecutarse en el sistema operativo Windows , pero se estaban desarrollando versiones para Linux y Mac OS . Mientras tanto, Gambas también incluye un componente OpenGL 2.1, con enlaces GL disponibles para FreeBASIC y QB64 .

Basic4GL para Linux

Basic4GL se estaba adaptando a Linux. La principal diferencia entre Basic4GL para Windows y la versión para Linux que se estaba intentando desarrollar es que utiliza la biblioteca SDL en lugar de bibliotecas específicas de Windows para inicializar una ventana habilitada para OpenGL.

Basic4GL para Mac

También se estaba desarrollando una versión para Mac OS. No se ha publicado ninguna versión funcional.

Basic4SDL

Basado en la compilación de Linux, un proyecto para crear una versión extendida de Basic4GL que se integra más estrechamente con la biblioteca SDL (que no debe confundirse con SDLBasic ). [ 8 ]

Basic4Juegos

También se estaba desarrollando un sucesor de Basic4GL llamado "Basic4Games". Solo se ha publicado una vista previa.

Basic4GLj

Una adaptación del lenguaje a la máquina virtual de Java . [ 9 ]

Código de ejemplo

Dim A Para A = 0 a 4 Imprimir "Hola " ; A Siguiente

Cuando se introduce el código anterior en Basic4GL y se ejecuta, se muestra lo siguiente en la pantalla del monitor.

Hola 0 Hola 1 Hola 2 Hola 3 Hola 4 

Características

Soporte para sonido y música

Cuando Basic4GL se lanzó por primera vez, solo podía reproducir sonidos, pero en 2006 se añadió compatibilidad con música utilizando el motor de sonido OpenAl , que posteriormente fue reemplazado por Audiere .

Funciones y subrutinas

Cuando Basic4GL se lanzó por primera vez, no tenía soporte para funciones . Sin embargo, eso cambió con el lanzamiento de la versión 2.5.0 en enero de 2008. Ahora Basic4GL tiene soporte completo para variables locales , parámetros , declaración anticipada y recursión .

Plugins

En agosto de 2006 se añadió compatibilidad con DLL de complementos a Basic4GL. Esto significa que puedes escribir tus propios comandos e incluirlos en el lenguaje de programación Basic4GL; solo necesitas un compilador de C++ . Los complementos amplían las capacidades de Basic4GL y existen muchos, que proporcionan funcionalidades como motores de física, fuentes TrueType , detección de colisiones, etc.

SourceForge

Tanto Basic4GL para Windows como la nueva versión para Linux se han publicado en SourceForge , lo que significa que cualquiera puede desarrollar los lenguajes y mejorarlos.

Véase también

Referencias

  1. 1 2 3 4 Mulgrew, Tom. "¿Alguna pregunta?" . ProBoards . Consultado el 14 de junio de 2011 .
  2. Mulgrew, Tom. "Versión 2.3.0 publicada" . ProBoards . Consultado el 14 de junio de 2011 .
  3. Mulgrew, Tom. "Versión 2.3.5 publicada" . ProBoards . Consultado el 14 de junio de 2011 .
  4. Mulgrew, Tom. "Basic4GL v2.4.2 ha sido lanzado" . ProBoards . Consultado el 14 de junio de 2011 .
  5. Mulgrew, Tom. "Basic4GL v2.4.3 ha sido lanzado" . ProBoards . Consultado el 14 de junio de 2011 .
  6. Mulgrew, Tom. "Basic4GL v2.5.0" . ProBoards . Consultado el 14 de junio de 2011 .
  7. Mulgrew, Tom. "Home" . Archivado del original el 21 de julio de 2011. Recuperado el 18 de julio de 2011 .
  8. Wybiral (18/02/2007). "Básico" . Foros de Ubuntu . Archivado del original el 27/09/2023. Basic4SDL: Es principalmente un entorno de pruebas OpenGL+SDL para gráficos 3D y demás... Pero funciona en Linux y se mantiene bastante fiel a la sintaxis BASIC.
  9. Proven, Liam (28-03-2023). "¿Nostalgia por VB? BASIC está lejos de estar muerto" . The Register . Consultado el 27-09-2023 . Si bien Basic4GL ha caído en el olvido, su adaptación a la JVM, Basic4GLj, se encuentra en desarrollo activo.
  • Sitio web oficial
  • "Basic4GL para Linux" . Archivado del original el 19 de septiembre de 2012. Consultado el 3 de enero de 2007 .{{cite web}}: CS1 maint: bot: estado de la URL original desconocido ( enlace )
  • "Espacio wiki de Basic4GL" . Archivado del original el 14 de septiembre de 2008. Consultado el 4 de enero de 2007 .{{cite web}}: CS1 maint: bot: estado de la URL original desconocido ( enlace )
  • Basic4Games en SourceForge
  • Basic4SDL - Linux en SourceForge
  • Sistema de audio Audiere en SourceForge