Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » PicoBASIC - Un interprétateur qui charge le code par tronçons.
Mb88 Hors ligne Membre Points: 334 Défis: 0 Message

PicoBASIC - Un interprétateur qui charge le code par tronçons.

Posté le 17/09/2022 11:38

PicoBASIC

(Mon projet secret, mais qui ne l'est plus )

@rdp

Les commits sur mon gitea (au début j'avais gitlab) perso :

Un code exemple :
msg@="bigger than zero"
8bit@=0
if 8bit==0
    msg@="is zero"
ifend

PicoBASIC est un language de programmation qui permettra aux graphs monochromes d'éxecuter des gros programmes codés on-calc avec une vitesse comfortable.
Comment le code est décodé :

msg:0, @=:4, "bigger than zero":3,
8bit:0, @=:4, 0:1,
if:0, 8bit:0, ==:4, 0:1,
msg:0, @=:4, "is zero":3,
ifend:0,

Chaque ligne correspond à une instruction.
Le tronçon est exécuté caractère par caractère.
Dans le log que j'ai mis plus haut les morceaux sont séparés par des virgules.
Les morceaux sont écrits
morceau:type

Les types :
* 0 : mot
* 1 : int
* 2 : float
* 3 : string
* 4 : opérateur

Fichier joint


Mb88 Hors ligne Membre Points: 334 Défis: 0 Message

Citer : Posté le 17/09/2022 12:12 | # | Fichier joint


Derniers changements d'aujourd'hui :

Mb88 Hors ligne Membre Points: 334 Défis: 0 Message

Citer : Posté le 18/09/2022 12:33 | # | Fichier joint


Aujourd'hui :

Calamari Hors ligne Membre Points: 229 Défis: 0 Message

Citer : Posté le 18/09/2022 18:22 | #


I'm curious: what is the significance of the "@" character?
Mb88 Hors ligne Membre Points: 334 Défis: 0 Message

Citer : Posté le 19/09/2022 08:43 | #


It's like = in python : it's just easier to parse !
Calamari Hors ligne Membre Points: 229 Défis: 0 Message

Citer : Posté le 19/09/2022 08:59 | #


Ah, I see. In many BASIC's you used = for both assignment and comparison. It would be assignment unless it's in an if/while/for, etc statement. But, I'm with you, my fingers naturally want to type == these days.
Lephenixnoir En ligne Administrateur Points: 22762 Défis: 149 Message

Citer : Posté le 19/09/2022 09:36 | #


Si tu utilises == pour la comparaison tu peux juste utiliser = pour l'assignement non ?

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2022 | Il y a 53 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd