QB64, nato originariamente come QB32, è un compilatore BASIC per Microsoft Windows, Linux e macOS, progettato per essere retrocompatibile con il QBASIC e il QuickBASIC. Esso traduce essenzialmente i programmi dal QB64 al C++ e poi li compila. Il QB64 implementa molte istruzioni del QBasic e può compilare quasi tutti i programmi QBasic, compresi i popolari Gorillas e Nibbles; inoltre, permette l'emulazione di parecchie funzionalità DOS. Il QB64 è stato progettato per presentare al programmatore un IDE del tutto simile a quello del QBasic originale. La particolarità di QB64 è che, in più, include i tipi di dati a 64 bit, prevede una migliore resa del sonoro e ha un migliore supporto per la grafica. È software libero, ed è autocompilante.

 





Storia.
Il QB64 è stato compilato per la prima volta in QuickBASIC 4.5. Dopo uno periodo di sviluppo piuttosto lungo, Galleon, lo sviluppatore, non soddisfatto delle limitazioni di memoria imposte dal QuickBasic, decise di compilarlo con il Basic PDS 7.1 della Microsoft, che risolse questi problemi per un po' di tempo. Dalla versione 0.63, QB64 fu in grado di auto-compilarsi, cosicché le limitazioni della memoria convenzionale non furono più un problema.



Sintassi.
La sintassi del QB64 è stata scelta per essere completamente retrocompatibile con il QuickBasic (ma anche precedenti versioni di Basic, anche se tale non è lo scopo principale del progetto). I numeri di linea possono essere specificati, ma non sono obbligatori. Le istruzioni possono finire con un invio oppure con i ":" due punti. Esempio di programma "Ciao, mondo":
10 PRINT "Ciao, mondo!"



Novità rispetto al QuickBasic.
Le nuove istruzioni messe a disposizione dal QB64 iniziano tutte con un carattere di sottolineatura (trattino basso o underscore), in modo da evitare eventuali conflitti con vecchi programmi che possono usare tali istruzioni come funzioni personalizzate definite dall'utente (infatti nel QuickBasic originale non è previsto che il nome di una parola chiave, di una variabile o di una funzione contenga un trattino basso). QB64 implementa molte nuove funzioni rispetto al QuickBasic. Per esempio, possono essere usati nuovi tipi di variabili, come _BIT, _BYTE, _INTEGER64 e _FLOAT, anche di tipo unsigned (senza segno). I nuovi tipi di variabili hanno un suffisso, proprio come è tipico dei tipi di dati del QBasic. QB64 include anche una libreria audio, che permette di riprodurre i più comuni tipi di formati audio, come WAV, MP3, Ogg Vorbis. Il supporto per la grafica è maggiore: sono disponibili modalità schermo con risoluzione maggiore di 640x480 pixel, e con profondità di colore fino a 32-bit (RGB più il canale alfa). Le librerie che usa QB64 permettono di caricare agevolmente immagini in formato BMP, JPEG, GIF, ecc... Dal momento che QB64 conserva la filosofia del BASIC, e cioè di essere un linguaggio semplice, non è necessario che il programmatore specifichi le librerie che devono essere utilizzate, in quanto il compilatore le include automaticamente tutte (in futuro questo aspetto verrà migliorato, e il compilatore deciderà di includere solamente quelle strettamente necessarie). Il programmatore ha comunque la possibilità di includere una libreria personale usando il metacomando $INCLUDE, come nel QuickBasic originale (anche se tale funzionalità non era prevista nelle prime versioni e negli interpreti).



Librerie.
QB64 usa le librerie OpenGL. È risultato essere il più sviluppato fra tutti i dialetti della famiglia BASIC dal punto di vista sia grafico che sonoro, grazie anche alla capacità di supportare tutte le librerie di Windows e del linguaggio C. Da segnalare l'utility vWATCH che consente di eseguire passo-passo un programma fatto con QB64 e verificare istante per istante le variabili, in modo da agevolare il debug.



Fonte: https://it.wikipedia.org

Il sito di QB64: https://www.portal.qb64.org

L'utility  vWATCH: https://www.qb64.org


 

 

Visitatori del sito dal 3 giugno 2024.

Italy 58,1% Italy
United States of America 31,9% United States of America
Germany 3,6% Germany

Total:

40

Countries
003503
Today: 9
Yesterday: 36
This Week: 458
This Month: 2.196
Total: 3.503
We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.