Skip to content

V3.0: Un nouveau départ avec des nouveautés et fixs

Latest

Choose a tag to compare

@Program132 Program132 released this 27 Jul 17:44
· 5 commits to main since this release

Pourquoi

Le parser actuel manquait clairement de clarté et pouvait paraître illisible pour les curieux qui souhaitaient regarder le code source.
Par ailleurs beaucoup plus d'éléments seront présents de base comparé à la V2 qui ressemblait à une mini base sans vraiment beaucoup de contenu.

Contenu

Globalité

  • Suppression des ; pour simplifier l'écriture et la compréhension du langage.
    Ainsi il est possible de faire par exemple, sans problème : variable entier a -> 5 envoyer "cc" ou variable entier a -> 5 envoyer a

envoyer

L'instruction envoyer a toujours la même syntaxe sauf lorsqu'on envoi plusieurs valeurs dans un seul et même "envoyer".
Suite à la suppression des ";" j'ai décidé de rajouter un truc à l'instruction envoyer:
envoyer [ valeur1 valeur2 valeur3 valeur4 ... ]
Exemple: envoyer [ "cc" "yo, " 10 ". I am " 10.5 " yo !" ]

https://program-4.gitbook.io/french-programming-language/instructions/le-print

saisir

Même principe qu'avant sauf que cette fois-ci, si le type précisé n'est pas équivalent à la réponse donné, la variable sera de type texte et aura la valeur vide
Exemple:

saisir texte a
envoyer ["Valeur recuperer: " a ]

saisir entier age -> "Age: "
envoyer ["Valeur recuperer (vide): " age ]
On aura:
c

Valeur recuperer: c
Age: a

Valeur recuperer (vide): vide

https://program-4.gitbook.io/french-programming-language/instructions/les-entrees-claviers

fichier

Nouvelle syntaxe, exemple:

fichier lire content "file_to.txt"
envoyer content

fichier ecrire "file_to.txt" -> "Salut la compagnie ! "
fichier lire c "file_to.txt"
envoyer c

https://program-4.gitbook.io/french-programming-language/instructions/les-fichiers

Variables constantes et globales

Deux instructions font leur apparition : constante et globale ces dernières peuvent être combiné pour qu'une variable soit constante et globale par exemple :

constante entier a -> 10
envoyer a
constante globale entier c -> 1
envoyer c

globale texte ms -> "Bienvenue !"
envoyer ms
globale constante texte msg -> "BEYE NOOB"
envoyer msg
10
1
Bienvenue !
BEYE NOOB

verifier

Pas spécialement une nouvelle syntaxe depuis la dernière mise à jour mais les bugs concernant les verifier dans des verifier est résolu (vous pouviez avoir des erreurs avec 'Inconnu' car il ne reconnaissait pas les différent blocs).

variable entier a -> 5

verifier a {
    cas 0:
        envoyer "Salut"
        ,
    cas 5:
        variable entier b -> 10

        verifier b {
            cas 10:
            envoyer "Bye"
            ,
            cas 25:
            envoyer "++"
            ,
        }
    ,
}

Bye

tant que -> tantque

Le nom de l'instruction est maintenant tout attaché au lieu de "tant que" on aura "tantque".
Pour les actions, c'est dès maintenant augmenter et diminuer !

variable entier i -> 2
variable entier a -> 10
variable entier z -> 3

tantque i > 0, diminuer 1 {
    tantque a >= 0, diminuer 5 {}
    tantque z >= 0, diminuer 1 {}
}

envoyer a
envoyer z

changer i -> 2
changer a -> 10
changer z -> 3

tantque i > 0, diminuer 1 {
    tantque a > 0, diminuer 5 {}
    tantque z > 0, diminuer 1 {}
}

envoyer a
envoyer z
0
0
5
1

math

Nouvelle syntaxe: math VAR_NAME [ CALCUL ]
Le type de base d'une variable déclaré avec math est toujours decimal

math a [ 10 + 5 - 2 ]
envoyer a