Skip to content

Releases: Program132/French-Programming-Language

V2.0 : Un nouveau parser

12 Feb 00:55
Compare
Choose a tag to compare

Parser

Un nouveau parser est arrivé pour cette nouvelle version !

Rien de particulier modifié/ajouté au premier regard mais en backend beaucoup de chose ont changé : plus de séparation des fichiers, accès aux datas du code sans problème, etc.

La documentation a également été mis à jour ! Des changements risques d'arrivé à la fin de la pre-release.

Cependant, les instructions pour les boucles et conditions ont temporairement été enlevé, elle reviendront pendant la V2.

News

Le langage comporte une nouveauté : les paquets, ils permettent le regroupement des éléments telle que les fonctions ou autre, voir la doc.

V1.9: Boucle + condition

08 Dec 19:03
Compare
Choose a tag to compare

ATTENTION : Cette mise à jour clôture la V1 et contient des tests, tout n'est pas finis mais tout sera bon pour la V2 !

Dans cette mise à jour, vous trouverez deux nouvelles instructions :

  • tant que qui est une boucle comme while, il y a qu'un opérateur conditionnelles disponible qui est "=" qui permet d'incrémenter ou de décrémenter en fonction de la valeur de la variable et de la valeur que vous souhaitez vérifier.

  • verifier qui est instruction conditionnelle qui permet de faire comme un switch dans les langages connus comme en C++, Java, etc.

Voici des exemples pendant l'addition des ces instructions

variable entier a -> 15;

tant que a = 10, incrementer 1 {
    envoyer "Yo";
}

envoyer a;

variable entier b -> 5;

tant que b = 10, incrementer 1 {
    envoyer "Yo 2";
}

envoyer b;
variable entier a -> 3;

verifier a {
    quand 5,3:
        envoyer "Bonjour";
        ,
    defaut:
        envoyer "salut";
        ,
}
variable entier a -> 3;

verifier a {
    quand 5,3:
        envoyer "Bonjour";
        ,
}

V1.75: Importation, conversion, et +.

26 Oct 13:43
Compare
Choose a tag to compare

Dans cette nouvelle mise à jour, vous pourrez importer des fichier en ".fpl", convertir des variable de type "texte" en type "entier", et bien plus encore !

fichier.fpl :

envoyer "yo";

main.fpl :

importer "fichier.fpl";
envoyer "Salut";

Cela va exécuter tout ce qu'il y a dans le fichier que vous importez !


variable texte a -> "5";
convertir a entier;

variable texte b -> "5.25";
convertir b decimal;

De plus, un nouveau type à fait son apparaition : bool ou booleen.

definir fonc() {
    variable bool b -> faux;
    renvoyer b;
}

variable bool fonction a -> fonc;
envoyer a;

V1.35 : Fixs, Opti, Les fichiers !

15 Aug 17:43
Compare
Choose a tag to compare

Dans cette nouvelle mise à jour, de nombreux fixs et ajout d'optimisation ont été appliqué !

Premièrement, dès à présent vous pouvez donner le nom du fichier en argument dans votre invite de commande comme: French_Programming_Language.exe main.fpl et cela ne vous demandera pas de donner le fichier où l'interpréteur va analysé.

De plus, maintenant vous pouvez donner un argument ou une variable dans l'instruction renvoyer à l'intérieur d'une fonction, qui renverra la valeur de cette variable/cet argument.

definir p() {
    variable entier a -> 15;
    renvoyer a;
}

variable entier fonction b -> p;
envoyer b;
definir p(entier age) {
    envoyer "fonction qui donne l'argument age";
    renvoyer age;
}

variable entier fonction b -> p : age 25;
envoyer b;

Nouveauté: la lecture et l'écriture dans des fichiers. Sachez une chose, si vous fichier est inexistant lorsque vous voulez écrire à l'intérieur, il se créera automatiquement lui même avec le contenu que vous souhaitez lui donner.

fichier ecrire "msg.txt" -> "Yo";
fichier lire "msg.txt" content;
envoyer content;

Comme d'habitude, un exécutable pour Windows + Linux, le fichier main.fpl et enfin pour l'exemple avec les fichiers un msg.txt qui est le fichier utilisé dans le main.fpl !

V1.3 : Des fonctions, nouveau type et plus.

23 Jul 16:14
Compare
Choose a tag to compare

Dans cette nouvelle version on a les fonctions avec l'instruction definir. On peut ajouter des arguments et faire un return avec l'instruction renvoyer.

Pour une appellation d'une fonction simple, c'est à dire sans return et bien on utilisera l'instruction appeler.
Si non, on déclarera une variable qui doit être de même type que le type du retour de la fonction. On utilisera ce format : variable [type] fonction [nom] -> [arguments];

Nouveau type : auto. Cela permettra de ne pas se tromper en cas de doute.

Les variables globales : elles peuvent être déclaré dans une fonction et être utilisé à l'extérieur de cette dernière, tandis que si elles ne sont pas globales, celles déclaré dans une fonction seront supprimées.

Des nombreux fixs ont été faits.

V1.07 : Inputs et bien plus :).

20 Jul 11:58
Compare
Choose a tag to compare

Dans cette mise à jour :

  • Des fixs sur des failles.
  • Possibilité de faire des inputs avec variable texte saisir entre; ou variable texte saisir entre -> "Le message qui sera visible dans la console";
  • Insertion des variables dans les prints :
variable entier a -> 5;
envoyer "La valeur de a est :" [a]; 

V1.05

19 Jul 18:15
Compare
Choose a tag to compare

Mise à jour comportant des fixs sur des failles présentant un problème.
Un opérateur à mettre à chaque fin d'instruction.
Possible de déclarer une variable qui a la même valeur qu'une autre variable.

Voici un résumé :

variable entier a -> 5;
envoyer a;
changer a -> 10;
envoyer a;
variable entier b -> a;
envoyer b;

V1.0 : Un nouveau départ

18 Jul 10:14
Compare
Choose a tag to compare

F.P.L a été tout refait à 0.

En effet, maintenant j'utilise un Parser et ce qui est très très pratique :). Des petites modifications ont aussi été apporté.

Je vous invite à lire la documentation pour commencer.

Vous trouverez un fichier exécutable pour Linux + Windows et un fichier .fpl comme exemple.
Sachez que vous devez préciser le fichier à l'interpréteur au lancement du programme.

V0.3 : mettre à jour la valeur d'une variable

28 Jun 19:09
Compare
Choose a tag to compare

Maintenant grâce aux mot clé "changer" vous pouvez modifié la valeur de votre variable :) !

Format: changer [VARIABLE] -> [VALEUR]

Quelque fixs ont aussi été apporté.

V0.22 Insertion des variables dans envoyer

11 Jun 12:40
Compare
Choose a tag to compare

Dès à présent, vous pourrez insérer vos variables et voir leur valeurs dans la fonctionnalité envoyer

Vous pouvez toujours utiliser un argument comme : envoyer mavariable mais aussi : envoyer Resultat de 5 + 10 : [calcul]

Je vous invite à voir le wiki.