stringtranslate.com

Blitz BÁSICO

Blitz BASIC es el dialecto del lenguaje de programación de los primeros compiladores Blitz [1] , ideado por el desarrollador Mark Sibly, con base en Nueva Zelanda. Al derivar de BASIC , la sintaxis de Blitz fue diseñada para que fuera fácil de entender para los principiantes que aprenden a programar por primera vez. Los lenguajes están orientados a la programación de juegos, pero a menudo se los considera lo suficientemente generales como para ser utilizados en la mayoría de los tipos de aplicaciones. El lenguaje Blitz evolucionó a medida que se lanzaron nuevos productos, y las encarnaciones recientes ofrecían soporte para técnicas de programación más avanzadas, como la orientación a objetos y el multithreading . Esto llevó a que los lenguajes perdieran su apodo BASIC en años posteriores. [2]

Historia

La primera iteración del lenguaje Blitz fue creada para la plataforma Amiga y publicada por la firma australiana Memory and Storage Technology. Volviendo a 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, un editor local de juegos para Amiga. Desde entonces, los compiladores Blitz han sido lanzados en varias plataformas . Tras la desaparición de Amiga como plataforma comercialmente viable, el código fuente de Blitz BASIC 2 fue lanzado a la comunidad Amiga. El desarrollo continúa hasta el día de hoy bajo el nombre de AmiBlitz. [4]

Blitz básico

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

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

Blitz Plus

En febrero de 2003, Blitz Research Ltd. lanzó BlitzPlus también para Microsoft Windows. Carecía del motor 3D de Blitz3D, pero sí incorporaba nuevas características al lado 2D del lenguaje al implementar un soporte limitado para los controles de Microsoft Windows para crear GUI nativas . También se amplió la compatibilidad con versiones anteriores del motor 2D, lo que permitió que los juegos y aplicaciones compilados de BlitzPlus se ejecutaran en sistemas que tal vez solo tuvieran DirectX 1.

Blitzmáximo

El primer compilador BlitzMax fue lanzado en diciembre de 2004 para Mac OS X. Esto lo convirtió en el primer dialecto Blitz que podía compilarse en plataformas *nix. Los compiladores para Microsoft Windows y Linux fueron lanzados posteriormente en mayo de 2005. BlitzMax trajo el cambio más grande de la estructura del lenguaje a la gama moderna de productos Blitz al extender el sistema de tipos para incluir conceptos orientados a objetos y modificar la API de gráficos para adaptarse mejor a OpenGL . BlitzMax también fue el primero de los lenguajes Blitz en representar cadenas internamente usando UCS-2 , lo que permitió soporte nativo para literales de cadena compuestos de 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 oficial y la cadena de compilación solo generarán binarios para la plataforma en la que se ejecuta. De manera extraoficial, los usuarios han podido lograr que Linux y Mac OS X se compilen de manera cruzada con la plataforma Windows.

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

En octubre de 2007, se lanzó BlitzMax 1.26, que incluía la incorporación de un módulo de reflexión . [6] BlitzMax 1.32 incluía nuevos módulos de subprocesamiento y scripting Lua y la mayoría de las funciones de la biblioteca estándar se han actualizado para que sean compatibles con Unicode . [7]

Kit de desarrollo de software 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 , pero también se puede utilizar con otros lenguajes que siguen convenciones de llamada compatibles.

Módulo Max3D

En 2008, se publicó el código fuente de Max3D (un motor 3D multiplataforma basado en C++) 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 había en la comunidad Blitz por el esperado sucesor de Blitz3D, el interés y el apoyo se desvanecieron poco después de que se publicara el código fuente y, finalmente, el desarrollo se detuvo. No hay indicios de que Blitz Research retomará el proyecto.

Versión de código abierto

BlitzPlus se lanzó como 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 lanzó como código abierto el 3 de agosto de 2014. [10] [11] BlitzMax se lanzó más tarde como 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 lenguaje de programación poderoso. [14]

Ejemplos

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

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

Programa que demuestra la declaración de variables utilizando los tres tipos de datos principales ( cadenas , enteros y flotantes ) e imprimiéndolos 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 ventanas que muestra la hora actual en formato binario y decimal. Vea a continuación las versiones de BlitzMax y BlitzBasic:

Software escrito con BlitzBasic

Legado

En 2011, BRL lanzó un nuevo lenguaje de programación multiplataforma llamado Monkey y su primer módulo oficial llamado Mojo. Monkey tiene una sintaxis similar a BlitzMax, pero en lugar de compilar directamente en código ensamblador, traduce los archivos fuente de Monkey directamente en 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 de Mark Sibly.

Referencias

  1. ^ La palabra "Blitz" significa "relámpago" en alemán.
  2. ^ "El sitio web oficial de Blitz". blitzresearch.itch.io/ . Archivado desde el original el 3 de junio de 2017.
  3. ^ "Blitz Basic 2". AmigaReport . Archivado desde el original el 31 de marzo de 2022 . Consultado el 30 de abril de 2020 .
  4. ^ "AmiBlitz". GitHub .
  5. ^ "Blitz News". www.blitzbasic.com . Archivado desde el original el 26 de enero de 2008. Consultado el 12 de diciembre de 2007 .
  6. ^ "¡Ya está disponible la actualización 1.26 de BlitzMax!". www.blitzbasic.com . Archivado desde el 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 (2014-04-29)
  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 (3 de agosto de 2014)
  11. ^ blitz3d en GitHub
  12. ^ blitzmax en GitHub
  13. ^ Bettinson, Mat (marzo de 1996). "Blitz Basic 2.1". CU Amiga . N.º 73. EMAP Images. 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

Enlaces externos