Articulo de referencia

Blitz BÁSICO

[[Microsoft Windows]]"},"size":{"wt":""},"language":{"wt":"[[English language|English]]"},"genre":{"wt":"[[Game creation system]]"},"license":{"wt":"[[zlib License]]"},"alexa":{...

Blitz BASIC es el dialecto del lenguaje de programación de los primeros compiladores Blitz [ 1 ] , ideado por el desarrollador neozelandés Mark Sibly. Al derivarse de BASIC , la sintaxis de Blitz se diseñó para que los principiantes que se inician en la programación pudieran aprenderla fácilmente. Los lenguajes están orientados a la programación de videojuegos, pero suelen ser lo suficientemente versátiles como para utilizarse en la mayoría de las aplicaciones. El lenguaje Blitz evolucionó con el lanzamiento de nuevos productos, y las versiones más recientes ofrecen soporte para técnicas de programación más avanzadas, como la programación orientada a objetos y la programación multihilo . Esto provocó que los lenguajes perdieran su denominación BASIC en años posteriores. [ 2 ]

Historia

La primera versión del lenguaje Blitz se creó para la plataforma Amiga y fue publicada por la empresa australiana Memory and Storage Technology. De vuelta en Nueva Zelanda , Blitz BASIC 2 fue publicado varios años después (alrededor de 1993, según este comunicado de prensa [ 3 ] ) por Acid Software, una editorial local de juegos para Amiga. Desde entonces, se han lanzado compiladores de Blitz para diversas plataformas . Tras la desaparición de Amiga como plataforma comercialmente viable, el código fuente de Blitz BASIC 2 se puso a disposición de la comunidad Amiga. Su desarrollo continúa hasta el día de hoy bajo el nombre de AmiBlitz. [ 4 ]

BlitzBásico

Idigicon publicó BlitzBasic para Microsoft Windows en octubre de 2000. El lenguaje incluía una API integrada para realizar operaciones básicas de gráficos 2D y audio. Tras el lanzamiento de Blitz3D, BlitzBasic se suele denominar indistintamente Blitz2D.

El reconocimiento de BlitzBasic aumentó cuando se distribuyó una gama limitada de versiones "gratuitas" en revistas informáticas populares del Reino Unido, como PC Format . Esto dio lugar a una disputa legal entre el desarrollador y el editor, que finalmente se resolvió amistosamente.

BlitzPlus

En febrero de 2003, Blitz Research Ltd. lanzó BlitzPlus también para Windows. Si bien carecía del motor 3D de Blitz3D, aportó nuevas funciones al ámbito 2D del lenguaje mediante la implementación de compatibilidad limitada con los controles de Windows para la creación de interfaces gráficas de usuario nativas . Además, se amplió la retrocompatibilidad del motor 2D, lo que permitió que los juegos y aplicaciones compilados de BlitzPlus se ejecutaran en sistemas que solo contaban con DirectX 1.

BlitzMax

El primer compilador de BlitzMax se lanzó en diciembre de 2004 para Mac OS X. Esto lo convirtió en el primer dialecto de Blitz que podía compilarse en plataformas *nix. Posteriormente, en mayo de 2005, se lanzaron compiladores para Microsoft Windows y Linux. BlitzMax introdujo el mayor cambio en la estructura del lenguaje dentro de la gama moderna de productos Blitz, al extender el sistema de tipos para incluir conceptos de programación orientada a objetos y modificar la API gráfica para adaptarla mejor a OpenGL . BlitzMax también fue el primero de los lenguajes Blitz en representar internamente cadenas de caracteres mediante UCS-2 , lo que permitió la compatibilidad nativa con literales de cadena compuestos por caracteres no ASCII .

El conjunto de comandos de BlitzMax, independiente de la plataforma, permite a los desarrolladores compilar y ejecutar código fuente en múltiples plataformas. Sin embargo, el compilador y la cadena de compilación oficiales solo generan binarios para la plataforma en la que se ejecutan. De forma no oficial, algunos usuarios han logrado realizar compilaciones cruzadas para Linux y Mac OS X a la plataforma Windows.

BlitzMax es también la primera versión modular de los lenguajes Blitz, lo que mejora la extensibilidad del conjunto de comandos. Además, todos los módulos estándar que se incluyen con el compilador son de código abierto, por lo que el programador puede modificarlos y recompilarlos si es necesario. El módulo oficial de interfaz gráfica de usuario (GUI) multiplataforma de BlitzMax (conocido como MaxGUI) permite a los desarrolladores escribir interfaces gráficas de usuario para sus aplicaciones en Linux ( FLTK ), Mac ( Cocoa ) y Windows. Varios módulos aportados por los usuarios amplían el uso del lenguaje al integrar bibliotecas como wxWidgets , Cairo y Fontconfig , así como una selección de módulos de base de datos. También hay disponible una selección de módulos 3D de terceros, como MiniB3D [ 5 ] , un motor OpenGL de código abierto que se puede compilar y usar en las tres plataformas compatibles con BlitzMax.

En octubre de 2007, se lanzó BlitzMax 1.26, que incluía la adición de un módulo de reflexión . [ 6 ] BlitzMax 1.32 incluyó nuevos módulos de subprocesos y scripts Lua , y la mayoría de las funciones de la biblioteca estándar se actualizaron para que fueran compatibles con Unicode . [ 7 ]

SDK de Blitz3D

Blitz3D SDK es un motor de gráficos 3D basado en el motor de Blitz3D. Se comercializó para su uso con C++ , C# , BlitzMax y PureBasic ; sin embargo, también podía utilizarse con otros lenguajes que siguieran convenciones de llamada compatibles.

Módulo Max3D

En 2008, el código fuente de Max3D, un motor 3D multiplataforma basado en C++, se publicó bajo una licencia BSD . Este motor se centraba en OpenGL, pero tenía un backend abstracto para otros controladores gráficos (como DirectX) y utilizaba varias bibliotecas de código abierto, a saber, Assimp , Boost y ODE .

A pesar del entusiasmo que la comunidad de Blitz sentía por Max3D como el tan esperado sucesor de Blitz3D, el interés y el apoyo desaparecieron poco después de la publicación del código fuente y, finalmente, el desarrollo se detuvo. No hay indicios de que Blitz Research vaya a retomar el proyecto.

Lanzamiento de código abierto

BlitzPlus se publicó como software de código abierto el 28 de abril de 2014 bajo la licencia zlib en GitHub . [ 8 ] [ 9 ] Blitz3D le siguió poco después y se publicó como software de código abierto el 3 de agosto de 2014. [ 10 ] [ 11 ] BlitzMax se publicó posteriormente como software de código abierto el 21 de septiembre de 2015. [ 12 ]

Recepción

Blitz Basic 2.1 fue bien recibido por las revistas de Amiga. CU Amiga destacó su capacidad para crear aplicaciones y juegos compatibles con AmigaOS (a diferencia de AMOS Basic ) [ 13 ] y Amiga Shopper lo calificó como un potente lenguaje de programación. [ 14 ]

Ejemplos

Un programa "¡Hola, mundo!" que imprime en la pantalla, espera a que se pulse una tecla y luego finaliza:

Imprimir "¡Hola, mundo!" ; Imprime en la pantalla. WaitKey () ; Pausa la ejecución hasta que se presione una tecla. End ; Finaliza el programa.

Programa que muestra cómo declarar variables utilizando los tres tipos de datos principales ( cadenas de caracteres , enteros y números de coma flotante ) e imprimirlas en la pantalla:

nombre $ = "John" ; Crea una variable de cadena ($) edad = 36 ; Crea una variable entera (sin sufijo) temperatura # = 27.3 ; Crea una variable flotante (#)print "Mi nombre es " + nombre $ + " y tengo " + edad + " años." print "Hoy, la temperatura es " + temperatura # + " grados."Waitkey () ; Pausa la ejecución hasta que se presione una tecla. End ; Finaliza el programa.

Programa que crea una aplicación con interfaz gráfica que muestra la hora actual en formato binario y decimal. Consulte a continuación las versiones para BlitzMax y BlitzBasic:

Software escrito con BlitzBasic

  • Eschalon: Libro I – BlitzMax
  • Eschalon: Libro II – BlitzMax
  • Solitario Fairway – BlitzMax
  • GridWars – BlitzMax
  • TVTower (clon de código abierto de MadTV) – BlitzMax
  • Platypus – Blitz2D (versión para Mac, BlitzMax)
  • SCP – Brecha de contención – Blitz3D
  • Worms – originalmente titulado Total Wormage y desarrollado en Blitz Basic en Amiga antes de su lanzamiento comercial [ 15 ]

Legado

En 2011, BRL lanzó un lenguaje de programación multiplataforma llamado Monkey y su primer módulo oficial, Mojo. Monkey tiene una sintaxis similar a la de BlitzMax, pero en lugar de compilar directamente a código ensamblador, traduce los archivos fuente de Monkey directamente a código fuente para un lenguaje, marco o plataforma elegidos, por ejemplo, Windows, Mac OS X , iOS , Android, HTML5 y Adobe Flash .

Desde 2015, el desarrollo de Monkey X se ha detenido en favor de Monkey 2, una versión actualizada del lenguaje creada por Mark Sibly.

El desarrollador de Blitz BASIC, Mark Sibly, murió a principios de diciembre de 2024. [ 16 ] [ 17 ]

Referencias

  1. La palabra " Blitz " significa "relámpago" en alemán.
  2. "Sitio web oficial de Blitz" . blitzresearch.itch.io/ . Archivado del original el 3 de junio de 2017.
  3. "Blitz Basic 2" . AmigaReport . Archivado del original el 31 de marzo de 2022. Consultado el 30 de abril de 2020 .
  4. "AmiBlitz" . GitHub .
  5. "Noticias Blitz" . www.blitzbasic.com . Archivado del original el 26 de enero de 2008. Consultado el 12 de diciembre de 2007 .
  6. "¡Actualización 1.26 de BlitzMax ya disponible!" . www.blitzbasic.com . Archivado del original el 26 de mayo de 2011 . Consultado el 11 de enero de 2011 .
  7. ¡BlitzMax V132 para Windows y MacIntel ya está disponible! Archivado el 26 de mayo de 2011 en Wayback Machine en blitzbasic.com
  8. Código fuente de BlitzPlus publicado. Archivado el 16 de julio de 2016 en Wayback Machine por simonh (29/04/2014).
  9. ¡Blitz3D de código abierto! Archivado el 6 de septiembre de 2016 en Wayback Machine en los foros de Blitz3D por (2014)
  10. ¡Blitz3D ahora es gratuito y de código abierto! Archivado el 16 de julio de 2016 en Wayback Machine por simonh (2014-08-03)
  11. blitz3d en GitHub
  12. blitzmax en GitHub
  13. ^ Bettinson, Mat (marzo de 1996). "Blitz Básico 2.1". CU Amiga . No. 73. Imágenes EMAP. págs. 69– 70. ISSN 0963-0090 .   
  14. ^ Overaa, Paul (abril de 1996). "Blitz Básico 2.1". Comprador Amiga . No. 61. Publicaciones futuras. pag. 41. ISSN 0961-7302 .   
  15. IGN. Avance de Worms Blast archivado el 18 de febrero de 2007 en Wayback Machine en ign.com
  16. GCRedditor136 (12 de diciembre de 2024). "Mark Sibly, creador de BlitzBasic, ha fallecido :(" . r/amiga . Consultado el 24 de marzo de 2025 . {{cite web}}: CS1 maint: nombres numéricos: lista de autores ( enlace )
  17. "Fallece Mark Sibly (Blitz Basic)" . Amiga-News.de. 14 de diciembre de 2024. Consultado el 24 de marzo de 2025 .

Lecturas adicionales

  • Manual de desarrollo de NRS para Blitz Basic, 1997.
Libro para desarrolladores de NRS, vol. I - Foto de la portada
Libro para desarrolladores de NRS, vol. I - Foto de la portada
  • Subsitio de investigación de Blitz en itch.io (BlitzPlus, Blitz 3D, Monkey X, Monkey 2)
    • Subsitio de Monkey X (código abierto)
    • Subsitio de Monkey 2
  • blitz-research (Mark Sibly) en GitHub (BlitzPlus, BlitzMax, Blitz3D, Monkey, BlitzMax, Blitz3D para MSVC-CE 2017)
  • Sitio web de Blitz Research (archivado el 3 de junio de 2017)
  • Sitio web de Monkey X (archivado el 15 de julio de 2017)