J'ai été contesté par un ami d'écrire un compilateur Qbasic à Qbasic. p>
Où puis-je trouver une spécification de langue pour la dernière version de la langue? p>
4 Réponses :
L'IDE Qbasic de Micrasoft est livré avec une documentation assez complète de la langue et des routines fournies. Autant que je sache, cela concerne une spécification complète que vous trouverez, mais il devrait suffire d'écrire un compilateur pour (la plupart de) la langue, en dehors de la magie de peigne / poke non documentée. P >
Oui, le fichier d'aide Qbasic contient une description complète de toutes les commandes.
Peut-être aussi utile: ici, vous pouvez également trouver la documentation complète de Quickbasic 3.0: ousob.com/ ng / qbasic / ng320.php
Quickbasic 4.5 peut compiler dans * .exe p>
qb64 strong> est une belle clone / extension de qbasic fort> qui a un wiki contenant un Référence de langue triée alphabétiquement, par usage ou Syntaxiquement . p>
Remarque: les mots-clés préfixés avec un trait de soulignement ('_') sont des extensions qui ne faisaient pas partie de la langue qbasique classique. em> p>
Vous pouvez trouver la dernière version en tapant simplement sur votre navigateur: qb64 code> - c'est comme ça que c'est aujourd'hui appelé / refait la version de qbasic fort> avec un aspect plus important des opportunités. Ils ont leur
Voulez-vous dire Qbasic 1.1 ou QuickBasic 4.5?
Le défi stipule l'interprète Qbasic qui a été expédié avec les versions antérieures de Windows. Le compilateur doit fonctionner sur cette version de Qbasic et doit être capable de se compiler. Je suppose que cela signifierait Qbasic 1.1.
Vous êtes tout à fait un défi, étant donné que Qbasic est une langue interprétée et ne peut pas réellement compiler le code.
Un peu d'histoire arrière - la conversation a eu lieu parce que nous avons déploré que Qbasic n'avait pas de compilateur binaire que nous pouvions utiliser à l'école. Tout notre code devait être interprété par Qbasic, à l'époque, j'ai souhaité avoir la possibilité d'écrire un compilateur à Qbasic afin que je puisse produire des fichiers binaires. Ce défi est le fufil ce rêve d'enfance - créer un compilateur à Boostrap Qbasic d'une langue interprétée à une langue compilée.
La chose drôle est que le Qbasic qui a été expédié avec MS-DOS n'est qu'une version dépouillée de Quickbasic (IIRC 4.0, éventuellement 4.5) qui disposait des outils de compilation, d'outils binaires et de "QuickLib" supprimés.
@Simonjohnson, étiez-vous capable de construire cela? Je cherche un moyen de construire un interprète pour le qbasic (ou la variante) qui fonctionnerait sur Windows 8. J'utiliserais une autre langue qui fonctionne sur un système d'exploitation moderne. Je sais que vous pouvez utiliser un DOS VM, mais j'aimerais écrire un qui fonctionne sur la machine elle-même. BTW: L'écriture d'un interprète d'une langue dans la même langue est appelée interprétation méta-circulaire. EN.Wikipedia.org/wiki/meta-Circular_interprétation
Vous ne pouvez pas compiler qbasic en utilisant Qbasic sans la source à qbasic. Essayez QB64 à la place - il peut se compiler.
Pour réduire la confusion, non, qbasic / quickbasique n'était pas / n'est pas compilé dans les implémentations traditionnelles existantes, mais à la fin de la journée, il n'y a aucune raison de ne pas être compilée du code QBasic ne pouvait être compilé au même sens que tout code pourrait être compilé si quelqu'un a écrit un compilateur pour cela.